Ds\Sequence::filter
Ds\Sequence::filter
(PECL ds >= 1.0.0)
Ds \ Sequence :: filter - 使用可调用函数创建一个新序列,以确定要包含哪些值。
描述
abstract public Ds\Sequence Ds\Sequence::filter ([ callable $callback ] )
创建一个使用可调用的新序列来确定要包含哪些值。
参数
callback
bool callback ( mixed $value )
如果可选的可调用对象包含该值,则返回TRUE;
否则返回FALSE
如果没有提供回调,则只会包含结果为TRUE
的值(参见“转换为布尔值”)
返回值
若callback
返回值为 ,或在没有提供callback
的情况下所有值都转换为TRUE
,则含有以上任一一种情况的所有值的新序列返回TRUE
示例
示例#1使用回调函数的Ds \ Sequence :: filter()示例
<?php
$sequence = new \Ds\Vector([1, 2, 3, 4, 5]
var_dump($sequence->filter(function($value) {
return $value % 2 == 0;
})
?>
上面的例子会输出如下信息:
object(Ds\Vector)#3 (2) {
[0]=>
int(2)
[1]=>
int(4)
}
示例#2没有回调函数的Ds \ Sequence :: filter()示例
<?php
$sequence = new \Ds\Vector([0, 1, 'a', true, false]
var_dump($sequence->filter()
?>
上面的例子会输出如下信息:
object(Ds\Vector)#2 (3) {
[0]=>
int(1)
[1]=>
string(1) "a"
[2]=>
bool(true)
}
← Ds\Sequence::contains
Ds\Sequence::find →