(PECL ds >= 1.0.0)
Ds\Map::sorted — Devuelve una copia, ordenada por valor
Devuelve una copia, ordenada por valor utilizando una función comparator opcional.
comparatorLa función de comparación debe retornar un entero menor que, igual a, o mayor que 0 si el primer argumento es considerado, respectivamente, menor que, igual a, o mayor que el segundo.
Devuelve una copia del mapa, ordenada por valor.
Ejemplo #1 Ejemplo de Ds\Map::sort()
<?php
$map = new \Ds\Map(["a" => 2, "b" => 3, "c" => 1]);
print_r($map->sorted());
?>Resultado del ejemplo anterior es similar a:
Ds\Map Object
(
[0] => Ds\Pair Object
(
[key] => c
[value] => 1
)
[1] => Ds\Pair Object
(
[key] => a
[value] => 2
)
[2] => Ds\Pair Object
(
[key] => b
[value] => 3
)
)
Ejemplo #2 Ejemplo de Ds\Map::sort() utilizando un comparador
<?php
$map = new \Ds\Map(["a" => 2, "b" => 3, "c" => 1]);
// Invertir
$sorted = $map->sorted(function($a, $b) {
return $b <=> $a;
});
print_r($sorted);
?>Resultado del ejemplo anterior es similar a:
Ds\Map Object
(
[0] => Ds\Pair Object
(
[key] => b
[value] => 3
)
[1] => Ds\Pair Object
(
[key] => a
[value] => 2
)
[2] => Ds\Pair Object
(
[key] => c
[value] => 1
)
)