(PECL ds >= 1.0.0)
Ds\Map::ksort — Сортирует текущую коллекцию по ключам
Сортирует текущую коллекцию по ключам, опционально используя callback-функцию
comparator для сравнения элементов.
comparatorФункция сравнения должна возвращать целое, которое меньше, равно или больше нуля, если первый аргумент является соответственно меньшим, равным или большим, чем второй.
Функция не возвращает значения после выполнения.
Пример #1 Пример использования Ds\Map::ksort()
<?php
$map = new \Ds\Map(["b" => 2, "c" => 3, "a" => 1]);
$map->ksort();
print_r($map);
?>Вывод приведённого примера будет похож на:
Ds\Map Object
(
[0] => Ds\Pair Object
(
[key] => a
[value] => 1
)
[1] => Ds\Pair Object
(
[key] => b
[value] => 2
)
[2] => Ds\Pair Object
(
[key] => c
[value] => 3
)
)
Пример #2 Пример использования Ds\Map::ksort() с callback-функцией сравнения
<?php
$map = new \Ds\Map([1 => "x", 2 => "y", 0 => "z"]);
// Обратный порядок
$map->ksort(function($a, $b) {
return $b <=> $a;
});
print_r($map);
?>Вывод приведённого примера будет похож на:
Ds\Map Object
Ds\Map Object
(
[0] => Ds\Pair Object
(
[key] => 2
[value] => y
)
[1] => Ds\Pair Object
(
[key] => 1
[value] => x
)
[2] => Ds\Pair Object
(
[key] => 0
[value] => z
)
)