Easy-Micro

LANGAGE Langage PHP
Tableaux PHP

Les tableaux - array - en PHP

Formation PHP par Easy-Micro Définition

Une variable de type tableau est définie grâce à la fonction array ou en utilisant une notation de type [] ou par une valeur associée par l'opérateur =>

En php, un tableau (une matrice) est une liste d'éléments ordonnée de couple clé/valeur : Pour une clé de type entier, le tableau est dit numérique et la clé est désignée par le terme indice. Pour une cléde type chaîne, le tableau est dit associatif.

Exemple de création et de manipulation d'un array
<?php
$villes_france = array("Paris","Lyon","nantes");
$villes_italie = array("Rome","Florence");
$villes = array("France" => $villes_france, "Italie" => $villes_italie);
?>
<html><body>
<?php  echo $villes["France"][1]; ?>
</body></html>
Résultat : Lyon - L'indice d'un tableau commence toujours à 0

Exemple de stockage direct et de lecture avec la fonction foreach
<?php
$pays[0] = "Allemagne";
$pays[1] = "japon";
?>
<html><body>
<?php foreach($pays as $AffichagePays) {
   echo $AffichagePays;
} ?>
</body></html>
Résultat : Allemagne japon - Syntaxe de la fonction foreach: foreach(tableau as valeur de variable) { instructions; }.

Exemple de lecture d'un array avec la fonction for
<?php
for($i=0;$i < count($pays); $i++) {
echo $pays[$i]." ";
}
?>
Résultat : Allemagne japon - Syntaxe de la fonction for: for(valeur de départ; valeur de fin; le pas) { instructions;}. La valeur de fin est ici trouvée avec la fonction count(x) qui renvoie le nombre de valeurs d'un tableau.

Exemple de lecture d'un array avec la fonction implode
<?php
echo implode(", ", $pays) ;
?>
Résultat : Allemagne, japon

Exemple de lecture d'un array avec la fonction in_array
<?php
$pages_autorisees = array('bibi','baba','bobo');
$page = 'bubu';

if (in_array($page,$pages_autorisees)) { echo 'Bubu !'; }
else { echo "Pas bubu... snif, bouuuu..."; }
?>

Formation PHP par Easy-Micro Remplir un array dynamiquement

Syntaxe avec une boucle While
<?php
$montableau = array();

while(macondition) {
	$montableau[] = "Popompidou";
}
?>

Exemple concret de boucle While - Remplissage dynamique d'une matrice "$pages_autorisees"
<?php
$dossier = opendir("."); // Ouvrir le dossier courant
$i = 0;
while($fichier = readdir($dossier)) { // Tant que l'on peut lire des noms de fichiers if ($fichier != ".." && $fichier != "") { // si les noms ne sont pas ".." et vide $pages_autorisees[$i] = $fichier; // On stocke dans la matrice $i++; } } closedir($dossier); // On ferme le dossier ?>

Avec une boucle for
<?php
$taille_montab = 3;
$montab = array();

for($i=0;$i < $taille_montab;$i++) {
$montab[$i] = "Patali, patala";
}
?>

Fonctions utiles :
  • count($pays) permet de compter le nombre d'élément dans un tableau.
  • in_array("Japon", $pays) teste si une valeur est présente dans un tableau.
  • array_search("Japon", $pays) permet de rechercher une valeur dans un tableau.
  • explode(", ", $pays) permet de découper une chaîne selon un séparateur et de stocker les éléments dans un tableau.
  • implode(", ", $pays) regroupe des éléments dans une chaîne à l'aide d'un séparateur.
  • sort($pays) permet le tri croissant sur les valeurs d'un tableau (rsort pour décroissant).

< Page précédente LANGAGE PHP Page suivante >