7.2.55 natsort()
Tri d'un tableau avec l'algorithme à "ordre naturel"
[ Exemples avec natsort ] PHP 4
void
natsort (
array
array
)
natsort
implémente un algorithme
de tri qui traite les chaînes alpha-numériques
comme un être humain : c'est ce qui est appelé
l'"ordre naturel". Un exemple de la différence de
traitement entre un tel algorithme et un algorithme de tri de
chaînes (comme lorsqu'on utilise
sort
)
est illustré ci-dessous :
Exemple avec natsort |
<?php $array1 = $array2 = array ("img12.png", "img10.png", "img2.png", "img1.png");
sort($array1); echo "Tri standard\n"; print_r($array1);
natsort($array2); echo "Tri en ordre naturel\n"; print_r($array2); ?>
|
Le code ci-dessus va afficher :
Tri standard
Array
(
[0] => img1.png
[1] => img10.png
[2] => img12.png
[3] => img2.png
)
Tri en ordre naturel
Array
(
[3] => img1.png
[2] => img2.png
[1] => img10.png
[0] => img12.png
)
Pour plus de détails, rendez-vous sur le site de
Martin Pool :
Natural Order String Comparison
.
Note |
Si vous souhaitez conserver la relation clé/valeur,
utilisez plutôt
usort($arr, 'strnatcmp')
.
|
Voir aussi
natcasesort
,
strnatcmp
et
strnatcasecmp
.
|