Médiaforma

All posts tagged associatif

Plusieurs fonctions permettent de faire des recherches dans un tableau associatif :

  • array_key_exists(clé, tableau) retourne true si la clé existe, false sinon
  • in_array(valeur, tableau) retourne true si la valeur existe, false sinon
  • array_search(valeur, tableau) retourne la clé correspondant à la valeur ou false si la valeur n’existe pas

Définissez un tableau associatif pour les 10 premiers éléments du tableau périodique des éléments en vous rendant sur la page suivante :

http://archives.universcience.fr/francais/ala_cite/expo/tempo/aluminium/science/mendeleiev/

Parcourez le tableau avec la fonction foreach et affichez les couples clé/valeur dans un tableau bidimensionnel.  Voici le résultat à obtenir :

Solution

Faites une pause dans la vidéo pour vous permettre de saisir le code. Poursuivez la vidéo pour voir la solution.

Le tableau est défini avec une instruction array.

Son contenu est affiché dans un tableau à l’aide d’une instruction foreach.

Remarquez la syntaxe de l’instruction foreach. Les clés et les valeurs sont obtenus à travers les variables $cle et $valeur, précisées après le mot clé as.

 

<?php
$elements = array( "H"=>"Hydrogène", "He"=>"Helium", "Li"=>"Lythium", "Be"=>"Beryllium", "B"=>"Bore", "C"=>"Carbonne", "N"=>"Azote", "O"=>"Oxygène", "F"=>"Fluor", "Ne"=>"Néon");
echo ("<table border>");
echo ("<tr><th>Symbole</th><th>Elément</th></tr>");
foreach ($elements as $cle=>$valeur)
echo ("<tr><td>".$cle."</td><td>$valeur</td></tr>");
echo("</table>");
?>


Dans une rubrique précédente, je vous disais que les tableaux étaient de deux types : numérotés et associatifs.

Les tableaux associatifs consistent en un ensemble de couples clé=>valeur séparés entre eux par des virgules. Pour créer un tableau associatif, vous utiliserez la fonction array. Ici, la liste représente le nombre de calories pour 100g de différents aliments :

$calories = array("Pain au chocolat" => "410",
"Miel" => "304",
"Réglisse" => "377",
"Sorbet" => "90",
"Sucre" => "396",
"Cookies" => "464");

Les valeurs sont retrouvées par la clé qui leur est associée. Par exemple, pour trouver le nombre de calories associées à 100g de sorbet, vous utiliserez cette instruction :

echo $calories["Sorbet"];

Pour parcourir tous les éléments du tableau, vous pouvez utiliser une boucle foreach :

foreach($calories as $cle => $valeur)

echo $cle."=".$valeur.", ";