W3docs

Fonction PHP rsort()

Découvrez la fonction PHP rsort() : syntaxe, paramètres et exemples pratiques pour trier un tableau par ordre décroissant.

Dans cet article, nous allons examiner la fonction PHP rsort(), sa syntaxe, ses paramètres et son fonctionnement. Nous fournirons également des exemples pratiques d'utilisation de cette fonction dans des scénarios réels.

Introduction

Le tri est une opération essentielle lorsqu'on travaille avec des tableaux en PHP. La fonction rsort() trie un tableau sur place dans l'ordre inverse (décroissant) selon la valeur — la valeur la plus grande se retrouve à l'index 0. C'est le pendant décroissant de sort(), et elle supprime les clés d'origine en réindexant le tableau à partir de 0.

Utilisez rsort() lorsque vous avez une liste indexée (un classement, une liste de prix, des horodatages récents) et que vous souhaitez obtenir les valeurs les plus élevées en premier sans vous soucier des positions d'origine.

Syntaxe

La syntaxe de la fonction rsort() est la suivante :

rsort($array, $flags);

La fonction prend deux paramètres : $array et $flags. Le paramètre $array est obligatoire et représente le tableau à trier. Le paramètre $flags est facultatif et détermine le comportement du tri. Il peut prendre les valeurs suivantes :

  • SORT_REGULAR : Compare les éléments normalement (sans changer les types)
  • SORT_NUMERIC : Compare les éléments numériquement
  • SORT_STRING : Compare les éléments en tant que chaînes de caractères
  • SORT_LOCALE_STRING : Compare les éléments en tant que chaînes de caractères selon les paramètres régionaux du système.

Fonctionnement

La fonction rsort() fonctionne en comparant les valeurs du tableau et en les triant dans l'ordre inverse. Elle compare chaque valeur avec la suivante dans le tableau et les échange si elles ne sont pas dans le bon ordre. Ce processus se poursuit jusqu'à ce que le tableau entier soit trié.

Notez que rsort() modifie le tableau d'origine sur place et renvoie un booléen (true en cas de succès, false en cas d'échec). Elle réindexe également les clés numériques de manière séquentielle après le tri.

Exemples pratiques

Voyons quelques exemples pratiques d'utilisation de la fonction rsort().

Exemple 1 - Tri de valeurs numériques

php— editable, runs on the server

Résultat :

Array
(
    [0] => 20
    [1] => 15
    [2] => 10
    [3] => 8
    [4] => 5
)

Exemple 2 - Tri de valeurs de type chaîne

php— editable, runs on the server

Résultat :

Array
(
    [0] => elderberry
    [1] => date
    [2] => cherry
    [3] => banana
    [4] => apple
)

Exemple 3 - Tri de valeurs mixtes

php— editable, runs on the server

Résultat :

Array
(
    [0] => cherry
    [1] => banana
    [2] => apple
    [3] => 10
    [4] => 8
    [5] => 5
)

Avec SORT_REGULAR, les chaînes de caractères sont triées avant les nombres car PHP compare les valeurs sans forcer de conversion de type. Sachez que la comparaison de types mixtes peut produire des résultats surprenants ; lorsque vos données sont réellement mixtes, préférez un indicateur explicite ou une comparaison personnalisée avec usort().

Pièges courants

  • Les clés sont perdues. rsort() réindexe toujours le tableau en commençant à 0, de sorte que les clés existantes (chaînes ou numériques) sont supprimées. Si vous avez besoin de conserver l'association clé-valeur, utilisez arsort() à la place.
  • Elle trie par valeur, pas par clé. Pour trier par clé dans l'ordre inverse, utilisez krsort().
  • Elle modifie le tableau d'origine. Comme rsort() fonctionne sur place et ne renvoie que true/false, n'écrivez jamais $sorted = rsort($array); — cela stockerait le booléen, pas le tableau trié.

Fonctions associées

FonctionTrie parOrdreConserve les clés ?
sort()ValeurCroissantNon
rsort()ValeurDécroissantNon
asort()ValeurCroissantOui
arsort()ValeurDécroissantOui
ksort()CléCroissantOui
krsort()CléDécroissantOui

Pour un aperçu plus large des outils de tri de PHP, voir Trier des tableaux.

Conclusion

Dans cet article, nous avons examiné la fonction rsort() en PHP, en couvrant sa syntaxe, ses paramètres et son comportement. Nous avons également fourni des exemples pratiques de tri de tableaux numériques, de chaînes et mixtes.

Si vous avez besoin de trier un tableau dans l'ordre inverse selon ses valeurs, rsort() est un outil intégré fiable. En comprenant son comportement de modification sur place et les indicateurs disponibles, vous pouvez gérer efficacement le tri des tableaux dans vos projets PHP.

Pratique

Pratique
Que fait la fonction rsort en PHP ?
Que fait la fonction rsort en PHP ?
Was this page helpful?