函数名:Ds\Sequence::filter()
适用版本:PHP 7.1.0 及以上版本
用法:此函数用于过滤序列中的元素,并返回一个新的序列,其中只包含符合指定条件的元素。
语法: public Ds\Sequence Ds\Sequence::filter ( callable $callback )
参数:
- callback: 是一个回调函数,接受序列中的每个元素作为参数,并返回一个布尔值。如果回调函数返回 true,则保留该元素;如果返回 false,则过滤该元素。
返回值: 返回一个新的 Ds\Sequence 对象,其中包含符合回调函数条件的元素。
示例:
$sequence = new Ds\Vector([1, 2, 3, 4, 5]);
// 过滤偶数元素
$filtered = $sequence->filter(function($item) {
return $item % 2 === 0;
});
var_dump($filtered->toArray()); // 输出: [2, 4]
在上面的示例中,我们创建了一个包含数字的序列。然后,通过使用 filter()
函数并传入一个回调函数,我们过滤掉了所有的奇数元素,并返回一个新的序列对象 $filtered
。最后,我们使用 toArray()
函数将序列转换为数组,并通过 var_dump()
函数打印输出结果。输出结果为 [2, 4]
,即过滤后的偶数元素。