ARRAY_MULTISORT |
Tableau : Multitri |
PHP 4.0+ |
Syntaxe
function array_multisort($arr);
|
function array_multisort($arr, $arg);
|
function array_multisort($arr, $arg, $arg);
|
function array_multisort($arr, $arg, $arg, ...);
|
Paramètres
Nom |
Description |
$arr |
Ce paramètre permet d'indiquer le tableau à traiter. |
$arg |
Ce paramètre permet d'indiquer le mode de traitement a effectuer : |
SORT_ASC |
Cette constante permet d'indiquer qu'un tri en ordre alphabétique. |
SORT_DESC |
Cette constante permet d'indiquer qu'un tri en ordre alphabétique inversé. |
SORT_REGULAR |
Cette constante permet d'indiquer qu'un tri régulier. |
SORT_NUMERIC |
Cette constante permet d'indiquer qu'un tri en ordre numérique. |
SORT_STRING |
Cette constante permet d'indiquer qu'un tri en ordre de chaîne de caractères. |
Retour
Valeur |
Description |
FALSE |
Cette valeur permet d'indiquer qu'une erreur s'est produite |
TRUE |
Cette valeur permet d'indiquer que l'opération s'est correctement effectué. |
Description
Cette fonction permet d'effectuer un tri sur un tableau avec plusieurs dimensions.
Remarques
- Tri simultané de plusieurs tableaux : La fonction array_multisort() permet de trier plusieurs tableaux en parallèle, en utilisant le premier tableau comme
référence. Les autres tableaux sont réorganisés en conséquence, ce qui est utile pour trier des ensembles de données liées (par exemple, des noms avec des âges correspondants).
- Tri multidimensionnel : Cette fonction peut également être utilisée pour trier des tableaux multidimensionnels. En passant plusieurs colonnes (ou sous-tableaux)
comme paramètres, il est possible de trier les données par plusieurs critères, comme dans les bases de données avec des clauses ORDER BY.
- Options de tri flexibles : array_multisort() offre des options pour personnaliser le tri, notamment avec des constantes comme SORT_ASC
(ordre croissant), SORT_DESC (ordre décroissant), SORT_NUMERIC (tri numérique), SORT_STRING (tri alphabétique), et SORT_NATURAL (tri naturel). Ces
options peuvent être appliquées individuellement à chaque tableau.
- Fonction non destructrice : Contrairement à certaines autres fonctions de tri, array_multisort() modifie directement les tableaux d'entrée. Elle ne
retourne pas de valeur mais modifie les tableaux passés par référence, ce qui doit être pris en compte lors de son utilisation.
- Alignement des tailles de tableaux : Tous les tableaux passés à array_multisort() doivent avoir la même taille. Si les tableaux ont des longueurs différentes,
la fonction ne produit pas de résultat valide, et il peut être nécessaire de prétraiter les données pour éviter ce problème.
- Performances et optimisation : array_multisort() est optimisée pour trier plusieurs ensembles de données simultanément, mais pour des tableaux très
volumineux ou multidimensionnels, son utilisation peut devenir coûteuse en termes de performances. Des alternatives, comme des algorithmes de tri personnalisés, peuvent être
envisagées dans ces cas.
- Compatibilité avec des tableaux associatifs : Si des tableaux associatifs sont passés, les clefs ne sont pas conservées après le tri. La fonction traite les
tableaux comme des tableaux indexés numériquement, ce qui peut être problématique si vous devez maintenir des associations clef-valeur.
- Complexité dans la gestion des types : Lorsque des données mixtes (numériques et chaînes de caractères) sont présentes, il est important de spécifier explicitement
le mode de tri (SORT_NUMERIC ou SORT_STRING). Sans cela, les résultats peuvent être inattendus, surtout si le tri par défaut ne correspond pas au type dominant
des données.
Dernière mise à jour : Dimanche, le 22 mars 2015