PHP在匿名函数中修改函数外部的变量

19-07-11 23:30 字数 259 阅读 640

在匿名函数中要想使用并修改外部的变量,需要使用use(&$变量名),如下

$planIdList = [];
$list = Report::getList($bdate, '*', $where)->each(function ($item, $key) use (&$planIdList) {
    array_push($planIdList, $item->plan_id);
    return $item;
});

如果不加use,会直接报错,因为$planIdList不存在,如果不加&,每次遍历$planidList都会清空,最后得到的还是个空数组。

1人点赞>
关注 收藏 改进 举报
0 条评论
排序方式 时间 投票
快来抢占一楼吧
请登录后发表评论