Trier des tableaux en PHP

Trier des tableaux en PHP

  1. Objectifs

    • Être capable de trier les tableaux en PHP
  2. Présentation

    • Le tri facilite et optimise de nombreuses tâches nécessitant l’accès ou l’obtention d’un ensemble de données spécifique. Dans ce tutoriel, nous allons apprendre à utiliser les fonctions PHP intégrées pour trier différents types de tableaux.
  3. Trier un tableau par valeur

    1. Utilisation de la fonction sort()
      • Syntaxe:
        • sort ( $array [, $mode] );
      • Le paramètre optionnel $mode
        • SORT_REGULAR : effectue une comparaison classique
        • SORT_NUMERIC : effectue une comparaison numérique
        • SORT_STRING : effectue une comparaison de chaînes

        Trier des tableaux en PHP

    2. Utilisation de la fonction rsort()
      • La fonction rsort effectue un tri inverse :
      • Si vous souhaitez trier les valeurs de votre tableau de haut en bas au lieu de bas en haut, vous pouvez le faire à l’aide de la rsort()fonction. Il accepte tous les mêmes paramètres que sort()mais trie les valeurs dans l’ordre inverse.
      • La fonction rsort ne gère aucune association clé-valeur, il n’est donc pas un bon choix pour trier les tableaux associatifs.
      • Trier des tableaux en PHP

  4. Trier un tableau associatif

    1. Association par valeur
      • PHP dispose de deux fonctions différentes pour trier les tableaux associatifs qui maintiennent l’association valeur.
      • Ces deux fonctions sont asort() et arsort(). L’extrait de code suivant trie le même tableau $notes_apprenants mais utilise asort() pour le faire.
      • <!DOCTYPE html >
        <html lang="fr">
        <head>
        <title>Les structures de contrôle en PHP</title>
        <meta ="UTF-8">
        </head>
        <body>
        <?php
        $notes_apprenants = ["Mohamed" => "16", "Ahmed" => "14", "Rafika" => "13", "Aicha" => "15", "Samir" => "13"
        , "Samar" => "13", "Rafik" => "10", "Samiha" => "09", "Fourat" => "07", "Sami" => "07", "Noura" => "14"];
         
        echo "Avant le triage — <br>";
        foreach($notes_apprenants as $apprenant=>$note) {
            echo $apprenant." à eu ".$note."<br>";
        }
        echo "Après le triage (de plus petit au plus grand )— <br>";
        asort($notes_apprenants);
        foreach($notes_apprenants as $apprenant=>$note) {
            echo $apprenant." à eu ".$note."<br>";
        }
        echo "Après le triage (de plus grand au plus petit)— <br>";
        arsort($notes_apprenants);
        foreach($notes_apprenants as $apprenant=>$note) {
            echo $apprenant." à eu ".$note."<br>";
        }
         ?>
        </body>
        </html>
    2. Association par clé
      • Le tri d’un tableau en fonction de ses clés est généralement utile lorsqu’il s’agit de tableaux associatifs.
      • <!DOCTYPE html >
        <html lang="fr">
        <head>
        <title>Les structures de contrôle en PHP</title>
        <meta ="UTF-8">
        </head>
        <body>
        <?php
        $notes_apprenants = ["Mohamed" => "16", "Ahmed" => "14", "Rafika" => "13", "Aicha" => "15", "Samir" => "13"
        , "Samar" => "13", "Rafik" => "10", "Samiha" => "09", "Fourat" => "07", "Sami" => "07", "Noura" => "14"];
         
        echo "Avant le triage — <br>";
        foreach($notes_apprenants as $apprenant=>$note) {
            echo $apprenant." à eu ".$note."<br>";
        }
        echo "Après le triage (de plus petit au plus grand )— <br>";
        ksort($notes_apprenants);
        foreach($notes_apprenants as $apprenant=>$note) {
            echo $apprenant." à eu ".$note."<br>";
        }
        echo "Après le triage (de plus grand au plus petit)— <br>";
        krsort($notes_apprenants);
        foreach($notes_apprenants as $apprenant=>$note) {
            echo $apprenant." à eu ".$note."<br>";
        }
         ?>
        </body>
        </html>

  • Références:
    • https://www.php.net
    • Livre PHP7 Cours et exercices Jean Engels 2e édition
    • Technologies de l’Information et de la Communication 4 année secondaire






Abonnez vous à notre chaîne YouTube gratuitement