Php 变换法中的Laravel连续循环
在Php 变换法中的Laravel连续循环,php,laravel,loops,collections,continue,Php,Laravel,Loops,Collections,Continue,在transform()中循环时,什么是continue 我想这样做: $collection->transform(function($item) { if ($condition) { continue; } return $item['key']; }); 一个选项是在转换完成后执行->reject(),但是否有方法在仍然循环的情况下执行此操作 注:目标是实际返回一个新集合,其中少了一个元素。例如 [ '1', '2', ]
transform()
中循环时,什么是continue
我想这样做:
$collection->transform(function($item) {
if ($condition) {
continue;
}
return $item['key'];
});
一个选项是在转换完成后执行->reject()
,但是否有方法在仍然循环的情况下执行此操作
注:目标是实际返回一个新集合,其中少了一个元素。例如
[
'1',
'2',
]
=> when $condition:
[
'1',
]
$collection->transform(function($item) {
if ($condition) {
return ['']; // <- This didn't work!
}
return $item['key'];
});
[
'1',
'2',
]
=>当$condition时:
[
'1',
]
$collection->transform(函数($item){
如果($条件){
return[''];//您可以使用collection->reduce()
方法实现这一点:
$collection->reduce(function($result, $item) {
if (!some_condition_etc...) {
$result->push($item['key']);
}
return $result;
}, collect());
使用($condition)
您需要在closar内部传递此信息