array_push期望在PHP中给出一个参数为null的数组?

时间:2015-04-12 11:35:17

标签: php arrays

我有以下代码

$newsheadline = array();
$crawler->filter('p.title > a')->each(function ($node) {
array_push($newsheadline, htmlentities($node->text()));
});

这给了我警告

array_push() expects parameter 1 to be array, null given

2 个答案:

答案 0 :(得分:2)

变量范围:$newsheadline不适用于你的闭包,所以你需要use它...并且因为你在闭包中修改它,你需要传递它通过引用

$crawler->filter('p.title > a')->each(
    function ($node) use (&$newsheadline) {
        array_push($newsheadline, htmlentities($node->text()));
    }
);

答案 1 :(得分:0)

试试这个:

$newshaedline = array();
$crawler->filter('p.title > a')->each(function ($node) {
      array_push($newsheadline, htmlentities($node->text()));
});

我认为不需要在同一个数组中再次保存它:$ newsheadline