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

07-11 23:30 182 0 1

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

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

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

做自己喜欢做的事。
Up骚年
Up骚年 站长 @ 十七度 创建者 17 声望
all or nothing, now or never.
1 人点赞
叶秋
0 条评论
排序方式 时间 投票
快来抢占一楼吧
请登录后发表评论