Even if documentation says that $cmp_function must be a string, this method works with a Callable also.
Example:
<?php
$iterator->uasort([$this, 'usort']); // 'usort' here is a method in the same class
(PHP 5 >= 5.2.0, PHP 7, PHP 8)
ArrayIterator::uasort — Trier avec une fonction de comparaison définie par l'utilisateur et maintient l'association de l'index
Cette méthode trie les éléments de telle sorte que les indices maintiennent leur corrélation avec les valeurs auxquelles ils sont associés, à l'aide d'une fonction de comparaison définie par l'utilisateur.
Note:
Si deux membres se comparent comme égaux, ils maintiennent leur ordre original. Antérieur à PHP 8.0.0, leur ordre relatif dans le tableau trié n'est pas défini.
callback
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.
Retourne toujours true
.
Version | Description |
---|---|
8.2.0 |
Le type de retour est maintenant true , auparavant il était bool.
|
Even if documentation says that $cmp_function must be a string, this method works with a Callable also.
Example:
<?php
$iterator->uasort([$this, 'usort']); // 'usort' here is a method in the same class