Description
int
strnatcmp ( string str1, string str2 )
strnatcmp() implémente l'algorithme
de comparaison qui ordonne les chaînes tel qu'un homme
le ferait. Cette fonction est similaire à la fonction
strnatcmp(), mais la comparaison n'est pas
sensible à la casse. Un exemple de la différence de
traitement avec l'algorithme standard est présenté ci-dessous :
Exemple 1. Exemple avec strnatcmp()
<?php $arr1 = $arr2 = array("img12.png", "img10.png", "img2.png", "img1.png"); echo "Tri de chaînes standard\n"; usort($arr1, "strcmp"); print_r($arr1); echo "\nTri de chaînes \"ordre naturel\"\n"; usort($arr2, "strnatcmp"); print_r($arr2); ?>
|
L'exemple ci-dessus va afficher : Tri de chaînes standard
Array
(
[0] => img1.png
[1] => img10.png
[2] => img12.png
[3] => img2.png
)
Tri de chaînes "ordre naturel"
Array
(
[0] => img1.png
[1] => img2.png
[2] => img10.png
[3] => img12.png
) |
|
Pour plus de détails, reportez-vous Ã
Natural Order String Comparison
de Martin Pool (en anglais).
strnatcmp() retourne < 0 si str1
est inférieure à str2; > 0 si str1
est supérieure à str2, et 0 si les deux chaînes
sont égales.
Notez que cette comparaison est sensible à la casse.
Voir aussi
preg_match(),
strcasecmp(),
substr(),
stristr(),
strcmp(),
strncmp(),
strncasecmp(),
strnatcasecmp(),
strstr(),
natsort() et
natcasesort().