Hai câu trả lời
1. Trả lời cho câu hỏi được hỏi.
2. Một thay đổi đơn giản tương đương với một cách tốt hơn!
Câu trả lời 1 - Chuyển Mảng Vars đến __construct () trong một lớp, bạn cũng có thể để trống cấu trúc và chuyển Mảng thông qua các hàm của bạn.
<?php
$content_arrays["modals"]= array();
$content_arrays["js_custom"] = array();
class Array_Pushing_Example_1 {
public $content_arrays;
private $push_value_1;
private $push_value_2;
private $push_value_3;
private $push_value_4;
private $values;
private $external_values;
public function __construct($content_arrays){
$this->content_arrays = $content_arrays;
}
public function array_push_1(){
$this->push_values_1 = array(1,"2B or not 2B",3,"42",5);
$this->push_values_2 = array("a","b","c");
foreach($this->push_values_1 as $this->values){
$this->content_arrays["js_custom"][] = $this->values;
}
foreach($this->push_values_2 as $this->values){
$this->content_arrays["modals"][] = $this->values;
}
return $this->content_arrays;
}
public function array_push_2($external_values){
$this->push_values_3 = $external_values["values_1"];
$this->push_values_4 = $external_values["values_2"];
foreach($this->push_values_3 as $this->values){
$this->content_arrays["js_custom"][] = $this->values;
}
foreach($this->push_values_4 as $this->values){
$this->content_arrays["modals"][] = $this->values;
}
return $this->content_arrays;
}
}
$content_arrays = new Array_Pushing_Example_1($content_arrays);
$content_arrays->content_arrays = $content_arrays->array_push_1();
$external_values = array();
$external_values["values_1"] = array("car","house","bike","glass");
$external_values["values_2"] = array("FOO","foo");
$content_arrays->content_arrays = $content_arrays->array_push_2($external_values);
echo "Array Custom Content Results 1";
echo "<br>";
echo "<br>";
echo "Modals - Count: ".count($content_arrays->content_arrays["modals"]);
echo "<br>";
echo "-------------------";
echo "<br>";
foreach($content_arrays->content_arrays["modals"] as $modals){
echo $modals;
echo "<br>";
}
echo "<br>";
echo "JS Custom - Count: ".count($content_arrays->content_arrays["js_custom"]);
echo "<br>";
echo "-------------------";
echo "<br>";
foreach($content_arrays->content_arrays["js_custom"] as $js_custom){
echo $js_custom;
echo "<br>";
}
echo "<br>";
?>
Câu trả lời 2 - Tuy nhiên, một thay đổi đơn giản sẽ phù hợp với các tiêu chuẩn hiện đại. Chỉ cần khai báo Mảng của bạn trong Lớp.
<?php
class Array_Pushing_Example_2 {
public $content_arrays;
private $push_value_1;
private $push_value_2;
private $push_value_3;
private $push_value_4;
private $values;
private $external_values;
public function __construct(){
$this->content_arrays["modals"] = array();
$this->content_arrays["js_custom"] = array();
}
public function array_push_1(){
$this->push_values_1 = array(1,"2B or not 2B",3,"42",5);
$this->push_values_2 = array("a","b","c");
foreach($this->push_values_1 as $this->values){
$this->content_arrays["js_custom"][] = $this->values;
}
foreach($this->push_values_2 as $this->values){
$this->content_arrays["modals"][] = $this->values;
}
return $this->content_arrays;
}
public function array_push_2($external_values){
$this->push_values_3 = $external_values["values_1"];
$this->push_values_4 = $external_values["values_2"];
foreach($this->push_values_3 as $this->values){
$this->content_arrays["js_custom"][] = $this->values;
}
foreach($this->push_values_4 as $this->values){
$this->content_arrays["modals"][] = $this->values;
}
return $this->content_arrays;
}
}
$content_arrays = new Array_Pushing_Example_2();
$content_arrays->content_arrays = $content_arrays->array_push_1();
$external_values = array();
$external_values["values_1"] = array("car","house","bike","glass");
$external_values["values_2"] = array("FOO","foo");
$content_arrays->content_arrays = $content_arrays->array_push_2($external_values);
echo "Array Custom Content Results 1";
echo "<br>";
echo "<br>";
echo "Modals - Count: ".count($content_arrays->content_arrays["modals"]);
echo "<br>";
echo "-------------------";
echo "<br>";
foreach($content_arrays->content_arrays["modals"] as $modals){
echo $modals;
echo "<br>";
}
echo "<br>";
echo "JS Custom - Count: ".count($content_arrays->content_arrays["js_custom"]);
echo "<br>";
echo "-------------------";
echo "<br>";
foreach($content_arrays->content_arrays["js_custom"] as $js_custom){
echo $js_custom;
echo "<br>";
}
echo "<br>";
?>
Cả hai tùy chọn đều xuất ra thông tin giống nhau và cho phép một hàm đẩy và truy xuất thông tin từ Mảng và Mảng con đến bất kỳ vị trí nào trong mã (Cho rằng dữ liệu đã được đẩy trước). Tùy chọn thứ hai cho phép kiểm soát nhiều hơn cách dữ liệu được sử dụng và bảo vệ. Chúng có thể được sử dụng như là chỉ sửa đổi theo nhu cầu của bạn nhưng nếu chúng được sử dụng để mở rộng Bộ điều khiển, chúng có thể chia sẻ giá trị của chúng giữa bất kỳ Lớp nào mà Bộ điều khiển đang sử dụng. Không có phương pháp nào yêu cầu sử dụng (các) Toàn cục.
Đầu ra:
Kết quả nội dung tùy chỉnh mảng
Chế độ - Đếm: 5
a
b
c
FOO
foo
JS Custom - Số lượng: 9
1
2B hoặc không 2B
3
42
5
xe hơi
nhà ở
xe đạp
cốc thủy tinh