(PECL ds >= 1.0.0)
Ds\Sequence::sorted — Renvoie une copie triée
Renvoie une copie triée de la séquence, en utilisant une fonction de comparaison optionnelle comparator
.
comparator
La fonction de comparaison doit retourner un entier inférieur à, égal à, ou supérieur à 0 si le premier argument est considéré comme, respectivement, inférieur à, égal à, ou supérieur au second.
Retourner des valeurs non-entières à partir de la fonction
de comparaison, telles que float, entraînera une conversion interne
de la valeur de retour du rappel en int. Ainsi, des valeurs telles que
0.99
et 0.1
seront toutes deux converties en une
valeur entière de 0
, ce qui comparera de telles valeurs comme égales.
Renvoie une copie triée de la séquence.
Exemple #1 Exemple de Ds\Sequence::sorted()
<?php
$sequence = new \Ds\Vector([4, 5, 1, 3, 2]);
print_r($sequence->sorted());
?>
Résultat de l'exemple ci-dessus est similaire à :
Ds\Vector Object ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 )
Exemple #2 Exemple de Ds\Sequence::sorted() utilisant un comparateur
<?php
$sequence = new \Ds\Vector([4, 5, 1, 3, 2]);
$sorted = $sequence->sorted(function($a, $b) {
return $b <=> $a;
});
print_r($sorted);
?>
Résultat de l'exemple ci-dessus est similaire à :
Ds\Vector Object ( [0] => 5 [1] => 4 [2] => 3 [3] => 2 [4] => 1 )