Leçon 8 : Les tableaux

Dans cette leçon, vous saurez ce qu'est un tableau, comment l'utiliser et ce qu'il peut faire.

Comprendre les tableaux est peut-être un peu difficile au début. Faites une tentative… nous avons essayé de simplifier autant que possible.

Qu'est-ce qu'un tableau ?

Un tableau est un ensemble d'éléments indexés qui ont chacun leur propre numéro d'identification unique.

C'est confus ? Ce n'est pas compliqué en réalité.

Imaginez une liste de mots séparés par des virgules. On l'appelle une liste séparées par des virgules, et elle pourrait ressembler, par exemple, à ceci :


	apples, pears, bananas, oranges, lemons

	

Puis essayez de diviser la liste à chaque virgule. Ensuite, donnez à chaque section un numéro d'identification comme ceci :

apples (0), pears (1), bananas (2), oranges (3), lemons (4)

Ce que vous voyez est un tableau. Nous pouvons ainsi nommer le tableau "fruits". Le but est que nous puissions accéder au tableau par un numéro et obtenir en retour une valeur, comme ceci :

fruits(0) = apples
fruits(1) = pears
fruits(2) = bananas
fruits(3) = oranges
fruits(4) = lemons

C'est l'idée derrière les tableaux. Mettons cela en pratique.

Comment utiliser un tableau ?

Nous continuerons avec l'exemple des fruits. Pas à pas, nous le ferons fonctionner comme un véritable tableau, nous assignerons une variable à la liste de fruits :


	<?php

	$fruitlist = "apples, pears, bananas, oranges, lemons";

	?>

	

Ensuite nous utilisons la fonction documentationexplode pour scinder la liste à chaque virgule :


	<?php

	$fruitlist = "apples, pears, bananas, oranges, lemons";

	$arrFruits = explode(",", $fruitlist);

	?>

	

Voila ! "$arrFruits" est maintenant un tableau !

Notez que nous avons appelé la fonction documentationexplode avec deux arguments :

  1. la liste à scinder
  2. et le séparateur, c'est-à-dire le caractère utilisé pour la scission (dans notre cas, une virgule), entre guillemets : ",".

Nous utilisons ici une virgule comme séparateur, mais n'importe quel caractère ou mot peut faire office de séparateur.

Commentons le script et mettons le tout dans une page PHP :


	<html>
	<head>
	<title>Array</title>
	</head>
	<body>

	<?php

	// Comma separated list
	$fruitlist = "apples, pears, bananas, oranges, lemons";

	// Create an array by splitting the list (with comma as delimiter)
	$arrFruits = explode(",", $fruitlist);

	   // Write the values from our array
	   echo "<p>The list of fruits:</p>";

	   echo "<ul>";
	   echo "<li>" . $arrFruits[0] . "</li>";
	   echo "<li>" . $arrFruits[1] . "</li>";
	   echo "<li>" . $arrFruits[2] . "</li>";
	   echo "<li>" . $arrFruits[3] . "</li>";
	   echo "<li>" . $arrFruits[4] . "</li>";
	   echo "</ul>";

	?>

	</body>
	</html>

	

C'est un exemple très simple, et l'intérêt d'employer un tableau ne paraît pas évident pour cette tâche particulière. Mais attendez… les tableaux peuvent servir à faire des choses très utiles.

Faire des itérations à travers un tableau

À la leçon 5, nous avons vu les boucles. Maintenant nous allons voir comment parcourir un tableau.

Lorsqu'on sait combien d'éléments un tableau contient, il n'y pas de problème pour définir la boucle. On commence simplement à 0 et on laisse continuer la boucle jusqu'au nombre d'éléments disponibles. Dans l'exemple avec les fruits, on effectuerait l'itération du tableau ainsi :


	<html>
	<head>
	<title>Array</title>

	</head>
	<body>

	<?php

	// Comma separated list
	$fruitlist = "apples, pears, bananas, oranges, lemons";

	// Create an array by splitting the list (with a comma as delimiter)
	$arrFruits = explode (",", $fruitlist);

	   echo "<p>The list of fruits:</p>";
	   echo "<ul>";

	   // Loop through the array $arrFruits
	   for ($x=0; $x<=4; $x++) {
	      echo "<li>" . $arrFruits[$x] . "</li>";
	   }

	   echo "</ul>";

	?>

	</body>
	</html>

	

Comme vous pouvez le constater, on a utilisé la variable $x (qui croît de 0 à 4 dans la boucle) dans l'appel du tableau.

Comment trouver la dimension d'un tableau

Mais que se passe-t-il si nous ajoutons un autre fruit à la liste ? Notre tableau contiendra alors un élément de plus, qui aura le numéro d'identification 5. Vous voyez le problème ? Il nous faut ensuite changer la boucle, afin qu'elle aille de 0 à 5, sinon les éléments ne seront pas tous pris en compte.

Ce serait bien pratique si nous pouvions automatiquement trouver le nombre d'éléments contenus dans un tableau, non ?

C'est exactement ce que fait la fonction documentationforeach. Nous pouvons désormais réaliser une boucle qui fonctionne indépendamment du nombre d'éléments :


	<?php
	   foreach ($arrFruits as $x) {
	      echo $x;
	   }
	?>

	

Cette boucle fonctionnera quel que soit le nombre d'éléments, de plus ou de moins, contenus dans le tableau.

Un autre exemple

Voici un autre exemple de la façon de se servir d'un tableau pour écrire le nom du mois :


	<html>
	<head>
	<title>Array</title>

	</head>
	<body>

	<?php
	// Creates array with each month.
	// Creates array with the months. Note the comma before January - because there is no month with the number 0
	$arrMonths = array("","January","February","March","April","May","June","July","August","September","October","November","December");

	// Call the array with the number of the month - write to the client
	echo $arrMonths[date("n")];
	?>

	</body>
	</html>

	

Notez que nous employons la fonction documentationarray au lieu de la fonction documentationexplode pour créer le tableau.

Ok. Ça suffit pour les tableaux ! Dans la prochaine leçon, vous verrez comment écrire vos propres fonctions.



<< Leçon 7 : Commenter ses scripts

Leçon 9 : Les fonctions >>