在 PHP class 中使用 array_merge 失败
Failed Using array_merge inside of PHP class
class Test
{
public $data = array();
public function addData($data = array())
{
array_merge($data, $this->data);
return $this;
}
public function showData()
{
print_r($this->data);
}
}
$test = new Test;
$test->addData(array("halo", "zaki"))->showData();
我尝试合并 2 个数组,但它不起作用,也许有人可以向我解释一下?
您忘记将结果数组赋值给成员变量$data
。应该是,
$this->data = array_merge($data, $this->data);
array_merge
不会修改传递给它的数组,而是 returns 结果。
试试这个:
public function addData($data = array())
{
$this->data = array_merge($data, $this->data);
return $this;
}
class Test
{
public $data = array();
public function addData($data = array())
{
array_merge($data, $this->data);
return $this;
}
public function showData()
{
print_r($this->data);
}
}
$test = new Test;
$test->addData(array("halo", "zaki"))->showData();
我尝试合并 2 个数组,但它不起作用,也许有人可以向我解释一下?
您忘记将结果数组赋值给成员变量$data
。应该是,
$this->data = array_merge($data, $this->data);
array_merge
不会修改传递给它的数组,而是 returns 结果。
试试这个:
public function addData($data = array())
{
$this->data = array_merge($data, $this->data);
return $this;
}