Généralités :
On ne doit pas déclarer leur taille au prélable
Ce sont les tableaux classiques, que l’on connaît en programmation. Le mot-clef pour les créer est array(). On peut accéder à chaque élément par son index, qui commence à zéro.
Les tableaux multidimensionnels
Les tableaux, en programmation, sont le moyen de grouper des données.
Création :
$tab = array(valeur0, valeur1, valeurn);
/**
* Depuis PHP 5.4
*/
$tab = [valeur0, valeur1, valeurn]; // c'est cette nomenclature que nous utiliserons.
Accès :
//$nomTableau[index]
$tab[0];
$tab[3];
Exemple :
<?php
$tableau = [2, 4, 6, 8, "chien", 'chat', 10];
echo $tableau[0];
echo $tableau[4];
$tableau[4] = "toto";
echo $tableau[4];
Remarque : Il existe une syntaxe réduite pour ajouter un à un les éléments sans avoir à manipuler les index.
<?php
$tableau = [2, 4, 6];
$tableau[0] = 2; $tableau[1] = 4; $tableau[2] = 6;
$tableau[] = 2; $tableau[] = 4; $tableau[] = 6;
Il suffit d’omettre l’index, mais en laissant les crochets. Ces trois codes sont équivalements :
Création :
$tab = [clef0 => valeur0,clef1 => valeur1,clef2 => valeurn]; // c'est cette nomenclature que nous utiliserons.
Accès :
//$nomTableau[index]
$tab[clef2];
$tab[clef1];
Exemple
<?php
$livre = [
"titre" => "Le Banquet",
"auteur" => 'Platon',
"origine" => "Grèce",
"type" => "philosophie"
];
echo "L'ouvrage est de " . $livre['auteur'] . "<br>";
echo "et s'intitule : " . $livre["titre"];
echo "<hr>";
<?php
function affiche($var1, $var2) {
echo "<tr><td>$var1</td><td>$var2</td></tr>";
}
// matrice de 3 X 2
$tableau[0][0] = 2;
$tableau[0][1] = 4;
$tableau[1][0] = 6;
$tableau[1][1] = 8;
$tableau[2][0] = 10;
$tableau[2][1] = 12;
echo "<table border='1' width='33%'>";
affiche ($tableau[0][0], $tableau[0][1]);
affiche ($tableau[1][0], $tableau[1][1]);
affiche ($tableau[2][0], $tableau[2][1]);
echo "</table>";
?>
Cet exemple permet l’affichage d’une matrice de 3 lignes et 2 colonnes sous forme d’une table HTML. Remarquez la création du tableau: on a directement affecté les valeurs aux différentes positions d’index.
Quelques fonctions utiles pour les tableaux :
<?php
$tableau = array(2, 4, 6, 8, "chien", 'chat', 10);
list($a, $b, $c, $d) = $tableau;
echo $a . $b . $c . $d;
echo '<hr>';
reset($tableau);
list($key, $value) = each($tableau);
echo 'clef : ' . $key . ' value : ' . $value;
echo '<hr>';
$value = current($tableau);
echo 'value : ' . $value;
?>