natsort

natsort -- Tri d'un tableau avec l'algorithme à "ordre naturel"

Description

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 1 . 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

 
"\nTri

 
par

 
Ordre

 
Naturel\n"

 
;

 
print_r($array2)

 
;

 
?





L' exemple ci-dessous génère l 'affichage suivant :

 
Tri

 
Standard

 
Array

 
(

 
[0

 
]

 
=

 
img1.png

 
[1

 
]

 
=

 
img10.png

 
[2

 
]

 
=

 
img12.png

 
[3

 
]

 
=

 
img2.png

 
)

 
Tri

 
par

 
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 .

Voir aussi array-multisort( ) , arsort( ) , asort( ) , krsort( ) , ksort( ) , natsort( ) , natcasesort( ) , rsort( ) , sort( ) , uasort( ) , uksort( ) , usort( ) , strnatcmp( ) et strnatcasecmp( ) .