函数名称:Ds\Vector::filter() 适用版本:PHP 7.2及以上
用法:该方法过滤Vector中的元素并返回已满足给定回调函数的新Vector。回调函数接受每个元素作为参数,并应返回一个布尔值,用于确定是否保留该元素。
语法:public Ds\Vector Ds\Vector::filter ( callable $callback )
参数:
- $callback: 必需,回调函数,用于过滤元素。它接受一个参数(Vector中的元素),并返回一个布尔值。
返回值:返回一个新的Ds\Vector对象,包含已满足回调函数的元素。
示例:
$vector = new Ds\Vector([1, 2, 3, 4, 5]);
$filteredVector = $vector->filter(function($element) {
return $element > 2;
});
var_dump($filteredVector->toArray());
输出:
array(3) {
[0]=> int(3)
[1]=> int(4)
[2]=> int(5)
}
上述示例中,我们首先创建一个包含整数的Vector对象。然后,使用filter()方法过滤掉所有小于等于2的元素,并将结果保存在新的Vector对象$filteredVector中。最后,通过调用toArray()方法,将过滤后的Vector转换为数组并输出结果。可以看到,过滤后的结果只包含大于2的元素:[3, 4, 5]。