【发布时间】:2014-08-27 03:54:13
【问题描述】:
这个想法很简单,但是我还没有实现它。
这是代码
(我已经更改了变量的名称来描述它们的用途)
$games = Game::all();
$games_already_added = $member->games()->lists('id');
$games = $games->filter(function($game){
global $games_already_added;
if(!in_array($game->id,$games_already_added)){
return true;
}
});
当代码执行时我收到错误
in_array() expects parameter 2 to be array, null given
我已验证变量$games_already_added 是在外部作用域上定义的并且包含项目。
有什么方法可以将$games_already_added 变量作为参数传递给集合的过滤函数?
非常感谢任何形式的建议或指导!
谢谢!
【问题讨论】:
-
或者你也可以
return !in_array($game->id,$games_already_added) -
@djay 确实是 djay ,但是我的问题是无法访问 games_already_added 数组,但是,感谢您的短线!