Parcourir un tableau en PHP

Parcourir un tableau en PHP

  1. Objectifs

    • Etre capable de faire des mise à jour sur les tableaux en PHP
  2. Présentation

    • Quatre méthodes pour explorer un tableau en PHP
      • La boucle for
      • la boucle foreach
      • la fonction print_r
      • La boucle while
  3. boucle for

    • L’utilisation de la boucle for dans le parcours d’une table nécessite le calcule de la taille du tableau à chaque itération.
    • La fonction count() sert comme paramètre d’arrêt pour la boucle for
    • L’utilisation de la variable $i comme compteur de la boucle permet de parcourir l’ensemble des valeurs du tableau
      unidimensionnel.

      <?php
      $apprenants = array( "Thamer", "Mohamed", "Mounira", "Samira", "Tarek" );
      for($i = 0, $size = count($apprenants); $i < $size; ++$i) {
          echo $apprenants[$i].'<br>';
      }
      ?>
  4. boucle foreach

    • La boucle foreach() n’est utilisable qu’à partir des versions 4 de PHP.
    • Elle est efficace pour les tableaux associatifs mais fonctionne également pour les tableaux de valeur ou d’indice.
    • Contrairement à la boucle for, la boucle foreach() ne nécessite pas de connaître par avance le nombre d’éléments du tableau à lire. Sa syntaxe varie en fonction du type de
      tableau.
    • Syntaxe:
      • Parcours des valeurs du tableau
      • foreach($tableau as $valeur)
        { 
        //bloc de code utilisant les valeurs de la variable $valeur;
        }
        

      • Parcours des clés et des valeurs du tableau
      • foreach ($tableau_1 as $cle => $valeur)
        {
            echo 'La clé ' . $cle . ' contient la valeur ' . $valeur . "\n";
        }
        

    • Déclarer un tableau dans le foreach
      • Dans les versions modernes de PHP (5.5 et plus récentes), on peut déclarer un tableau directement dans le foreach.
      • Pour aller plus loin dans la syntaxe, nous allons afficher l’ensemble des carrés et des cubes de 1 à 10 à partir du tableau [1, 2, 3, 4, 5, 6, 7, 8, 9, 10], de l’opérateur “puissance” ** et de la fonction echo :
      • foreach ([1, 2, 3, 4, 5, 6, 7, 8, 9, 10] as $valeur) {
            echo $valeur . ' a pour carré ' .
                ($valeur**2) . ' et pour cube ' .
                ($valeur**3) . ".\n";
        }
        Après exécution le résultat suivant sera affiché:
        1 a pour carré 1 et pour cube 1.
        2 a pour carré 4 et pour cube 8.
        3 a pour carré 9 et pour cube 27.
        4 a pour carré 16 et pour cube 64.
        5 a pour carré 25 et pour cube 125.
        6 a pour carré 36 et pour cube 216.
        7 a pour carré 49 et pour cube 343.
        8 a pour carré 64 et pour cube 512.
        9 a pour carré 81 et pour cube 729.
        10 a pour carré 100 et pour cube 1000.
    • Structure foreach imbriquée
      • Comme elle fait partie du langage PHP, la structure foreach peut être imbriquée dans une autre structure, par exemple un autre foreach.
      • Pour afficher un à un les éléments d’un tableau à deux dimensions, il est donc possible de faire comme ceci :
      • $tableau_3 = [
            [1, 2, 3],
            [4, 5, 6],
            [7, 8, 9],
        ];
        foreach ($tableau_3 as $cle_1 => $valeur_1) {
            foreach ($valeur_1 as $cle_2 => $valeur_2) {
                echo '[' . $cle_1 . ', ' . $cle_2 . '] = ' . $valeur_2 . "\n";
            }
            echo "----------\n";
        }
      • Cela affichera le résultat suivant :
      • [0, 0] = 1
        [0, 1] = 2
        [0, 2] = 3
        ———-
        [1, 0] = 4
        [1, 1] = 5
        [1, 2] = 6
        ———-
        [2, 0] = 7
        [2, 1] = 8
        [2, 2] = 9

    • La fonction print_r () est utilisée pour imprimer des informations lisibles sur une table.
  5. boucle while

    • La boucle while, permet de parcourir un tableau d’une manière efficace dans le cas d’un tableau retourné après une requête sur une base de données.
    • Pour un tableau à une seule dimension, l’expression booléenne contenue dans l’instruction while est isset($tab[$i]).
    • Cette expression prend la valeur TRUE tant que l’élément désigné par $tab[$i] existe. Sinon, elle prend la valeur FALSE, ce qui est le cas en fin de tableau.
    • $apprenants = array( "Thamer", "Mohamed", "Mounira", "Samira", "Tarek" );
      $i=0;
      while(isset($apprenants[$i]) )
      {
      echo "L'élément $i est $apprenants[$i]<br />";
      $i++;
      }

  • 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