Laravel Eloquent Collection的每种方法如何使用break或继续。
我的代码是这样的:
$objectives->each(function($objective) {
Collection::make($objective)->each(function($action) {
Collection::make($action)->each(function($success_indicator) {
Collection::make($success_indicator)->each(function($success_indicator) {
echo 'hi';
continue;
});
});
});
});
最佳答案
对于continue
,只需将return
移出内部函数即可。到break
,好..
如果您使用的是Laravel 5.1+,则可以返回false
来打破循环:
$objectives->each(function($objective) {
collect($objective)->each(function($action) {
collect($action)->each(function($success_indicator) {
collect($success_indicator)->each(function($success_indicator) {
if ($condition) return false;
});
});
});
});
对于较旧的Laravel版本,请使用常规的
foreach
循环:$objectives->each(function($objective) {
foreach ($objective as $action) {
foreach ($action as $success_indicators) {
foreach ($success_indicators as $success_indicator) {
echo 'hi';
break;
}
}
}
});