(PHP 5 >= 5.2.0, PHP 7)
ArrayObject::uksort — Trie les éléments par clé avec une fonction utilisateur
Cette fonction trie les clés des éléments en utilisant une fonction utilisateur de comparaison. La correlation entre les clés et les éléments est conservée.
cmp_function
La fonction de rappel pour les comparaisons.
La fonction cmp_function
doit accepter
deux paramètres, qui contiendront les clés des éléments.
La fonction de comparaison doit retourner un entier qui peut
être négatif, nul ou positif, suivant que le premier
paramètre est considéré comme inférieur, égal ou supérieur
au second.
Aucune valeur n'est retournée.
Exemple #1 Exemple avec ArrayObject::uksort()
<?php
function cmp($a, $b) {
$a = preg_replace('@^(le|la|les|un|une|des) @', '', $a);
$b = preg_replace('@^(le|la|les|un|une|des) @', '', $b);
return strcasecmp($a, $b);
}
$array = array("Jean" => 1, "la Terre" => 2, "une pomme" => 3, "une banane" => 4);
$arrayObject = new ArrayObject($array);
$arrayObject->uksort('cmp');
foreach ($arrayObject as $key => $value) {
echo "$key: $value\n";
}
?>
L'exemple ci-dessus va afficher :
une banane: 4 Jean: 1 une pomme: 3 la Terre: 2