Back

Les tableaux associatifs en PHP

Les tableaux associatifs en PHP

  1. Objectifs

    • Connaitre les tableaux associatifs
  2. Présentation

    • Un tableau associatif est un tableau que ces indexes sont crées par l’utilisateur et qu’il va les associer à chaque valeur.
    • Un tableau associatif est un ensemble de couples (clé, valeur). Une clé est soit un entier soit une chaîne de caractères. Une valeur est une donnée quelconque (booléen, numérique, chaîne de caractères..). La valeur d’un élément d’une collection dépend donc du couple (nom de la collection, clé).
  3. Création d’un tableau associatif

    • Pour créer un tableau associatif en PHP il existe plusieurs méthodes ou écritures:
      • Première écriture
        • Syntaxe:
          • $nom_tableau= array(cle1 => valeur1,cle2 => valeur2,cle3 => valeur3…..)
        • Exemple:
          • <?php
            $semaine=array('prmier_jour'=>'lundi','deuxième_jour'=>'mardi','troisième_jour'=>'mercredi','quatrième_jour'=>'jeudi','cinquième_jour'=>'vendredi','sixième_jour'=>'samedi','septième_jour'=>'dimanche');
            ?>
        • Description
          • Ce tableau est une variable en lui même puisqu’il commence par $
          • Les éléments du tableau peuvent être de même type ou de type différent
      • Deuxième écriture
        • Syntaxe:
          • $nom_tableau= array ();
          • $nom_tableau [‘clé1’]= valeur1;
          • $nom_tableau [‘clé2’]= valeur2;
          • $nom_tableau [‘clé3’]= valeur3;
        • Exemple:
          • <?php
            $semaine=array();
            $semaine['prmier_jour']='lundi';
            $semaine['deuxième_jour']='mardi';
            $semaine['troisième_jour']='mercredi';
            $semaine['quatrième_jour']='jeudi';
            $semaine['cinquième_jour']='vendredi';
            $semaine['sixième_jour']='samedi';
            $semaine['septième_jour']='dimanche';
            ?>
        • Description
          • Pour cette écriture les indexes sont implicites et c’est le compilateur qui en déduit les valeurs qui commencent par défaut de 0 et s’incrémentent de 1.
          • $semaine=array(); est facultative. Mais le fait de la déclarer est vu comme une bonne habitude.
          • Ici on a crée un tableau vide puis on l’a rempli par la suite.
      • Troisième écriture
        • Syntaxe:
          • $nom_tableau= [cle1 => valeur1,cle2 => valeur2,cle3 => valeur3…..]
        • Exemple:
          • <?php
            $semaine=['prmier_jour'=>'lundi','deuxième_jour'=>'mardi','troisième_jour'=>'mercredi','quatrième_jour'=>'jeudi',
            'cinquième_jour'=>'vendredi','sixième_jour'=>'samedi','septième_jour'=>'dimanche'];
            ?>
        • Description
          • C’est l’écriture le plus simplifiée
  4. Lecture d’un tableau associatif

    • Lecture d’une valeur
      • Pour lire une valeur d’un tableau indexé, on appelle la variable avec, entre les crochets [ ], le numéro de la clé correspondant à la valeur.
      • <?php
        $semaine=['prmier_jour'=>'lundi','deuxième_jour'=>'mardi','troisième_jour'=>'mercredi','quatrième_jour'=>'jeudi','cinquième_jour'=>'vendredi','sixième_jour'=>'samedi','septième_jour'=>'dimanche'];
        echo $semaine=['prmier_jour']; //Affiche lundi
        ?>
    • Lecture de plusieurs valeurs
      • Pour lire tous les élément d’un tableau, la solution c’est à utiliser la boucle forou la boucle while. Cependant, PHP inclue une structure de contrôle qui s’applique spécialement aux tableaux. Il s’agit de la structure foreach.
      • <?php
        $semaine=array('prmier_jour'=>'lundi','deuxième_jour'=>'mardi',
        'troisième_jour'=>'mercredi','quatrième_jour'=>'jeudi',
        'cinquième_jour'=>'vendredi','sixième_jour'=>'samedi',
        'septième_jour'=>'dimanche');
         
        foreach ($semaine as $jour)
        { //affiche jour
        echo($jour."</br>");
        }
        echo "</br></br>";
        foreach ($semaine as $jour =>$value)
        { //affiche prmier_jour Lundi
        echo ("<b>".$jour."</b> ".$value."</br>");
        }
        ?>
  5. Modifier une valeur dans un tableau associatif

    • Pour modifier une valeur dans un tableau associatif, il suffit d’affecter une nouvelle valeur au tableau, avec, entre les crochets [ ], la clé sous forme de chaîne correspondant à l’ancienne valeur.
    • <?php
      $semaine='prmier_jour'=>'lundi','deuxième_jour'=>'mardi','troisième_jour'=>'mercredi','quatrième_jour'=>'jeudi','cinquième_jour'=>'vendredi','sixième_jour'=>'samedi','septième_jour'=>'dimanche'];
      
      $semaine['prmier_jour'] =' Lundi';
      
  6. Applications

    • Exercice 01
      • Énoncé
        • Créer un tableau associant à chaque mois de l’année le nombre de jours du mois. (On supposera que l’année n’est pas bissextile.)
        • Afficher, sous forme d’un tableau de deux colonnes, le nombre de jours de chaque mois.
        Solution
          $jourMois = array('janvier'=>31,'février' =>28, 'mars'=>31, 'avril' => 30,'mai' => 31,
          'juin' =>30, 'juillet' => 31,'août' =>31, 'septembre'=> 30, 'octobre' =>31,
          ’novembre’ =>30, ’décembre’=> 31);
          
          echo’<table> <tr><th>Mois </th> <th>Nombre de jours </th></tr>’."\n";
          foreach($jourMois as $m => $nbJ)
          echo’<tr> <td>’. $m . ’ </td><td> ’. $nbJ . " </td></tr>\n";
          echo’</table>’;
    • Exercice 02
      • Énoncé
        • Créer un Tableau contenant les noms des 12 mois de l’année en Français et en Anglais
        Solution





Riadh HAJJI

Laisser un commentaire

Abonnez vous à notre chaîne YouTube gratuitement