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内部传递此信息