natsort

(PHP 4 , PHP 5)

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

Description

bool natsort ( array &array )

natsort() implémente un algorithme de tri qui traite les chaînes alpha-numériques du tableau array comme un être humain tout en conservant la relation clé/valeur. 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 :

Cette fonction retourne TRUE en cas de succès, FALSE en cas d'échec.

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
"Tri en ordre naturel\n";
print_r($array2);
?>

L'exemple 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.

Voir aussi natcasesort(), strnatcmp() et strnatcasecmp().