PHP
数据结构 | Data Structures

Ds\Vector::filter

Ds\Vector::filter

(PECL ds >= 1.0.0)

Ds \ Vector :: filter - 使用可调用函数创建一个新矢量,以确定要包含哪些值。

描述

public Ds\Vector Ds\Vector::filter ([ callable $callback ] )

使用callable创建一个新矢量以确定要包含哪些值。

参数

callback

bool callback ( mixed $value )

可选可调用,如果应该包含该值,则返回TRUE,否则返回FALSE。

如果没有提供回调,则只会包含TRUE(参见转换为布尔值)的值。

返回值

包含回调返回TRUE的所有值的新向量,或者如果未提供回调则将所有值转换为TRUE的值。

例子

示例#1使用回调函数的Ds \ Vector :: filter()示例

<?php $vector = new \Ds\Vector([1, 2, 3, 4, 5] var_dump($vector->filter(function($value) {     return $value % 2 == 0; }) ?>

上面的例子会输出类似于:

object(Ds\Vector)#3 (2) { [0]=> int(2) [1]=> int(4) }

示例#2没有回调函数的Ds \ Vector :: filter()示例

<?php $vector = new \Ds\Vector([0, 1, 'a', true, false] var_dump($vector->filter() ?>

上面的例子会输出类似于:

object(Ds\Vector)#2 (3) { [0]=> int(1) [1]=> string(1) "a" [2]=> bool(true) }

← Ds\Vector::count

Ds\Vector::find →