如何在 Laravel 中重写循环以收集函数?
How to rewrite loop to collection functions in Laravel?
我有一个循环,它迭代集合并查找状态为 1 的对象,然后删除它。
如何在 Laravel 中的集合函数上重写此代码?
$announcements->every(function ($value) use ($announcements) {
foreach($value->offers as $k => $v) {
if ($v->status == 1) {
unset($value->offers[$k]->publisher);
}
}
});
实际上 every() method checks if all items in the collection return true. You should use each() method 循环遍历所有项目并单独检查它们。
此外,如果您想从 collection 中删除一些项目,您可以使用 filter() method:
$fitlered = $announcements->filter(function($value) {
return $value->status !== 1;
});
我有一个循环,它迭代集合并查找状态为 1 的对象,然后删除它。
如何在 Laravel 中的集合函数上重写此代码?
$announcements->every(function ($value) use ($announcements) {
foreach($value->offers as $k => $v) {
if ($v->status == 1) {
unset($value->offers[$k]->publisher);
}
}
});
实际上 every() method checks if all items in the collection return true. You should use each() method 循环遍历所有项目并单独检查它们。
此外,如果您想从 collection 中删除一些项目,您可以使用 filter() method:
$fitlered = $announcements->filter(function($value) {
return $value->status !== 1;
});