Tableaux:Tri sur les tableaux
Un article de WikiTuto.
Sommaire |
Explication
Les fonctions sur les tableaux sont très complètes. Elles comportent même des fonctions prêtes à l'emploi pour trier le contenu d'un tableau selon ses valeurs ascendentes ou descendantes, et, pour les tableaux associatifs, des fonctions de tris dans les deux sens sur les valeurs ou sur la clé.
Exemple
L'exemple suivant va monter l'utilisation de sort() sur un tableau simple, ainsi que les effets pervers de next()
<?php
$tab = array("P","H","P","L","I","N","U","X");
asort($tab);
echo "
Parcours avec next() : " ;
for(reset($tab); $key = key($tab); next($tab)) {
echo "tab[$key]=".$tab[$key]."\n";
}
echo "
Parcours avec each() : " ;
reset($tab);
while(list($key,$value) = each($tab)) {
echo "tab[$key]=".$tab[$key]."\n";
}
?>
- Parcours avec next() :
tab[1]=H tab[4]=I tab[3]=L tab[5]=N tab[2]=P
- Parcours avec each() :
tab[1]=H tab[4]=I tab[3]=L tab[5]=N tab[2]=P tab[0]=P tab[6]=U tab[7]=X
En utilisant next(), le premier élément du tableau $tab[0]="P" ne s'affiche pas car next() retourne false.
Au passage, on remarque qu'un tableau ordinaire tel que $tab est en fait équivalent à un tableau associatif dont la clé n'est autre que l'indice de l'élément.
La fonction sort() ordonne le tableau suivant l'ordre croissant de ses valeurs. Inversement, la fonction rsort() effectue le tri par ordre décroissant (reverse).
Pour les tableaux associatifs, les fonctions asort() et ksort() permettent d'effectuer des tris sur la valeur ou sur la clé du tableau. La fonction inverse de asort() est arsort().
Voir aussi
- L'ensemble des articles concernant le PHP
- Introduction au PHP
- Syntaxe et Constructions
- Types de données
- Opérateurs et Expressions
- Instructions conditionnelles
- Les tableaux - Array
- Tableaux associatifs
- Tableaux à deux dimensions
- Tri sur les tableaux
- Tri suivant des fonctions utilisateur
- Fonctions couramment utilisées



