Vous êtes sur la page 1sur 3

LES TABLEAUX PHP

Qu'est-ce qu'un tableau ?


Avant toute chose, il est bon de prciser qu'un tableau PHP et un tableau HTML sont deux choses compltement diffrentes. Un tableaux PHP a pour fonction de stocker et manipuler des informations tandis qu'un tableau HTML sert prsenter des donnes sur un cran. Les tableaux, aussi appells arrays en anglais, sont des types de donnes structurs permettant de grouper des informations ensemble. A la diffrence des types primitifs (entiers, rels, flottants, boolens, chaines de caractres), les tableaux peuvent stocker une ou plusieurs valeurs la fois (de types diffrents). Lors de la dclaration d'un tableau, il est inutile de prciser sa dimension et le type de donnes qu'il va contenir. PHP s'en charge automatiquement. Les tableaux sont dits dynamiques. A chaque nouvelle entre enregistre dans le tableau, PHP agrandit sa taille de 1 lment. Le langage PHP propose galement deux types distincts de tableaux : les tableaux index numriques et les tableaux associatifs. Nous tudierons chacun de ces formats de tableaux plus loin dans ce cours.

Dclaration d'un tableau


La dclaration d'un tableau vide se fait de la mme manire qu'une variable, c'est dire avec un signe dollars ($) et un nom. Le format du nom doit respecter les mmes rgles de dclaration qu'une variable. Nous identifierons ensuite le tableau par le nom que nous lui avons attribu. Pour dclarer un nouveau tableau, il suffit d'utiliser la structure de langage array(). Cette fonction prend en paramtres facultatifs (spars par une virgule), les valeurs que l'on souhaite insrer dans le tableau pour l'initialiser. Si rien n'est prcis en paramtre, le tableau cr sera vide. Voici 3 exemples de dclaration et d'initialisation de tableaux.
Dclaration et initialisation de tableaux <?php // Dclaration d'un tableau vide $fruits = array(); // Dclaration d'un tableau index numriquement $legumes = array('carotte','poivron','aubergine','chou'); // Dclaration d'un tableau associatif $identite = array( 'nom' => 'Hamon', 'prenom' => 'Hugo', 'age' => 19, 'estEtudiant' => true ); ?>

Explications :

LES TABLEAUX PHP


La premire instruction cre un tableau vide appell $fruits. La seconde dclare un tableau index numriquement de nom $legumes et rempli de 4 valeurs. Enfin le dernier tableau cr est un tableau associatif de nom $identite et compos de couples cl => valeur.

Ajout d'une nouvelle entre dans un tableau


Pour ajouter une nouvelle valeur dynamiquement la fin des tableaux prcdents, il suffit de procder comme expliqu dans l'exemple suivant :
Ajout d'lment dans un tableau <?php // Ajout d'un lgume au tableu index numriquement $legumes[] = 'salade'; // Ajout de la taille de la personne dans le tableau associatif $identite['taille'] = 180; ?>

Explications :

La premire instruction ajoute dynamiquement la valeur 'salade' la fin du tableau. Le tableau contient donc prsent : carotte, poivron, aubergine, chou, salade. La seconde instruction cre dynamiquement un nouveau couple cl ('taille') => valeur (180) la fin du tableau.

Dans le cas du tableau index numriquement, il est aussi possible d'ajouter une valeur un index prcis en procdant de cette manire :
Ajout d'lments dans un tableau cls numriques <?php // Ajout de lgumes au tableu $legumes[12] = 'endive'; $legumes[20] = 'piment'; ?>

Explications :

PHP agrandit dynamiquement le tableau $legumes et ajoute la valeur 'endive' l'index 12. PHP agrandit encore dynamiquement le tableau $legumes et ajoute la valeur 'piment' l'index 20.

Le tableau index numriquement


Un tableau index numriquement est tout simplement une liste d'lments repers chacun par un index numrique unique. Le premier lment du tableau sera reper par l'index 0, le second par l'index 1, le troisime par l'index 2 et ainsi de suite.

LES TABLEAUX PHP


Pour accder un lement du tableau, il suffit d'y faire rfrence de cette manire : $tableau[0], $tableau[1], $tableau[2]... Reprenons notre exemple prcdent :
Lecture d'une valeur dans un tableau cls numriques <?php // Dclaration d'un tableau index numriquement $legumes = array('carotte','poivron','aubergine','chou'); // Ajout d'un lgume au tableu $legumes[] = 'salade'; // Affichage de l'aubergine echo $legumes[2]; ?>

Le tableau associatif
Il est apparu pour pallier les faiblesses du tableau index numriques. En effet pour ce dernier, il faut absolument connatre son emplacement pour atteindre la valeur et pour un programmeur ce n'est pas toujours le cas. De plus, une valeur repre par un index moins de sens que cette mme valeur repre par une cl chaine. Un tableau associatif est un tableau compos de couples cl chaine / valeur. A chaque cl est rfrence une valeur. Nous avons vu prcdemment comment dclarer un tableau associatif et lui associer des valeurs rfrences par des cls. Pour accder l'une des valeurs du tableau, il suffit d'y faire rfrence de la manire suivante : $tableau['cle']. Dans notre exemple prcdent, nous pourrions afficher l'identit de la personne de cette faon :
Lectures de valeurs dans un tableau associatif <?php // Affichage des valeurs du tableau associatif echo 'Nom : ', $identite['nom'] ,'<br/>'; echo 'Prnom : ', $identite['prenom'] ,'<br/>'; echo 'Age : ', $identite['age'] ,' ans<br/>'; echo 'Taille : ', $identite['taille'] ,' cm'; ?>

Cela aura pour effet d'afficher l'cran :


Rsultat de l'excution du script Nom : Hamon Prnom : Hugo Age : 19 ans Taille : 180 cm