Ds\Sequence::sorted

(PECL ds >= 1.0.0)

Ds\Sequence::sortedВозвращает отсортированную по значению копию коллекции

Описание

abstractpublicDs\Sequence::sorted(callable$comparator = ?): Ds\Sequence

Возвращает отсортированную копию коллекции, опционально используя callback-функцию comparator.

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

comparator

Функция сравнения должна возвращать целое, которое меньше, равно или больше нуля, если первый аргумент является соответственно меньшим, равным или большим, чем второй.

callback(mixed$a, mixed$b): int
Предостережение

Возвращение нецелых значений из функции сравнения, таких как число с плавающей точкой (float), приведёт к внутреннему приведению возвращаемого значения callback-функции к целому числу (int). Таким образом, значения 0.99 и 0.1 будут приведены к целочисленному значению 0, что позволит сравнить эти значения как равные.

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

Возвращает отсортированную по значению копию коллекции.

Примеры

Пример #1 Пример использования Ds\Sequence::sorted()

<?php
$sequence
= new \Ds\Vector([4, 5, 1, 3, 2]);

print_r($sequence->sorted());
?>

Вывод приведённого примера будет похож на:

Ds\Vector Object ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 )

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

<?php
$sequence
= new \Ds\Vector([4, 5, 1, 3, 2]);

$sorted = $sequence->sorted(function($a, $b) {
return
$b <=> $a;
});

print_r($sorted);
?>

Вывод приведённого примера будет похож на:

Ds\Vector Object ( [0] => 5 [1] => 4 [2] => 3 [3] => 2 [4] => 1 )
To Top