Ds\Sequence::filter

(PECL ds >= 1.0.0)

Ds\Sequence::filter Создаёт новую последовательность из элементов, выбранных с помощью заданной callback-функции

Описание

abstractpublicDs\Sequence::filter(callable$callback = ?): Ds\Sequence

Создаёт новую последовательность из элементов, выбранных с помощью заданной callback-функции.

Список параметров

callback

callback(mixed$value): bool

Необязательный аргумент типа callable, который возвращает true, если значение должно быть включено и false, если нет.

Если callback-функция не задана, то будут включены только элементы, которые приводятся к логическому значению true (смотри приведение к boolean).

Возвращаемые значения

Новая последовательность, содержащая значения, для которых функция callback вернула true, или все элементы, которые при приведении к логическому типу становятся true, если параметр callback не задан.

Примеры

Пример #1 Пример использования Ds\Sequence::filter() с callback-функцией

<?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() без callback-функции

<?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) }
To Top