Apprendre à coder sur pierre-giraud.com

DES COURS COMPLETS ET GRATUITS POUR TOUS

DECOUVERTE DES VARIABLES TABLEAUX PHP ET TABLEAUX NUMEROTES

Les variables tableaux en PHP

Les variables de type tableau, ou variables array en anglais sont un type particulier de variables puisque celles-ci peuvent contenir plusieurs valeurs à la fois.

Pour créer un tableau en PHP, nous allons utiliser la fonction array(). Les arguments que nous allons passer à cette fonction vont dépendre du type de tableau que nous voulons créer.

En effet, il existe trois types de tableaux différents en PHP :

  • Les tableaux numérotés ou indexés ;
  • Les tableaux associatifs ;
  • Les tableaux multidimensionnels.

Nous allons étudier chacun de ces trois types de tableaux PHP dans la suite de ce cours.

Dans tous les cas, nous placerons le résultat de la fonction array() dans une variable qui deviendra alors de fait une variable tableau.

Les tableaux numérotés ou indexés en PHP

Les tableaux indexés correspondent au type de tableaux le plus facile à créer en PHP.

Le principe est le suivant : nous allons passer différentes valeurs en arguments de notre fonction array(), et celle-ci va automatiquement attribuer des indices (qu'on appelle également index ou clefs) numérotés uniques pour chaque valeur, en commençant par l’indice zéro.

Ainsi, la première valeur spécifiée en argument de array() va portera l’indice 0, la seconde valeur aura l’indice 1, la troisième portera l’indice 2, etc.

Ce système d’association valeur / indice est typique des tableaux et va nous permettre par la suite de récupérer facilement une valeur (puisque chaque valeur d’un tableau est associée à une clef unique).

Il y a deux manières de créer un tableau indexé en PHP : soit on laisse PHP et array() assigner automatiquement les indices à chaque valeur de notre tableau, soit on choisit nous même les indices à associer à chaque valeur.

Prenons immédiatement un exemple utilisant chaque méthode.

Création d’une variable tableau numérotée en PHP

Comme vous pouvez le voir, on utilise array() pour créer notre première variable tableau $prenoms. Les indices sont alors assignés automatiquement.

Pour notre deuxième tableau $fruits, on choisit d’assigner les indices à chaque valeur manuellement.

Dans ce cas, nous allons créer et remplir notre variable tableau valeur par valeur et nous n'avons plus besoin d’utiliser la fonction array(). On va à chaque fois assigner une valeur à l’indice de notre choix de notre tableau. Cet indice doit être précisé entre crochets.

Ainsi, on choisit ici d’associer la valeur "fraise" à l’indice 0, la valeur "framboise" à l’indice 2 et la valeur "myrtille" à l’indice 5.

Comme vous pouvez le constater, les indices n’ont pas strictement besoin d’être suivis, même si il y a généralement peu d’intérêt à sauter des numéros d’indices (et c’est même non recommandé).

Evidemment, on va pouvoir stocker tous types de valeurs dans nos variables tableaux, comme des chiffres entre autres. Une nouvelle fois, nous n’aurons besoin des guillemets ou apostrophes que lorsqu’on souhaite stocker des chaines de caractères.

Afficher les valeurs d’un tableau numéroté une à une en PHP

Pour afficher les éléments d’un tableau numéroté un à un, c’est très simple : il suffit de préciser l’indice (entre crochets) correspondant à la valeur que l’on souhaite afficher.

Reprenons notre exemple précédent et affichons quelques valeurs :

On peut afficher les différentes valeurs d’un tableau numéroté en sélectionnant leur indice en PHP

Il est très simples d’afficher les valeurs d’une tableau numéroté une à une en PHP

Afficher toutes les valeurs d’un tableau numéroté en PHP

Pour afficher toutes les valeurs d’un tableau numéroté d’un coup, nous allons cette fois-ci devoir utiliser une boucle for.

Nous allons boucler sur le nombre d’éléments et les indices de notre tableau et nous allons récupérer une nouvelle valeur chaque nouveau passage dans la boucle.

La façon la plus simple de récupérer la taille (c’est-à-dire le nombre d’éléments) d’un tableau est d’utiliser la fonction count() qui va tout simplement prendre un tableau en argument et va retourner le nombre d’éléments de ce tableau.

On utilise la fonction PHP count() pour compter le nombre d’éléments d’un tableau

La fonction PHP count() renvoie bien le nombre d’éléments de nos tableaux

Une fois qu’on sait comment récupérer la taille de notre tableau, nous n’avons plus qu’à créer notre boucle for :

On utilise une boucle for pour afficher les éléments d’un tableau numéroté en PHP

Avec une boucle for, on peut afficher tout un tableau numéroté en PHP

Regardons cette boucle ensemble. Tout d’abord, on récupère la taille de notre tableau $prenoms dans une variable $tailleP. La variable $tailleP contient donc le nombre 3.

Ensuite, on va boucler sur une variable $x dont la valeur va suivre celle des indices de notre tableau.

On commence donc avec $x = 0 et, lors du premier tour dans notre boucle, on affiche donc la valeur correspondant à $prenoms[0], qui est "Pierre".

Dans notre deuxième tour de boucle, $x = 1 et c’est la valeur correspondant à la clef 1 qui est affichée, c’est-à-dire "Paul".

On sort de notre boucle dès que $x = $prenoms. En effet, rappelez vous que les indices d’un tableau numéroté commencent à 0.

Notre tableau $prenoms contient trois éléments, portant donc les indices 0, 1 et 2. On veut donc bien $x < $tailleP (puisque $tailleP contient 3).

Notez qu’une telle boucle ne fonctionnera pas bien si vous attribuez manuellement des indices à votre tableau et que vous sautez des numéros.

Dans ce cas là, il faudra plutôt utiliser une boucle foreach dans sa syntaxe la plus simple, comme ceci :

Utilisation d'une boucle foreach pour afficher les valeurs d'un tableau numéroté

Les valeurs de notre tableau PHP s'affichent bien grâce à la boucle foreach

La boucle foreach est une boucle qui a été spécialement créée pour afficher les valeurs des tableaux. Cependant, elle est moins rapide à exécuter qu'une boucle for, c'est pour cela qu'on préférera utiliser une boucle for tant que possible.

Ici, on boucle sur les valeurs de notre tableau. Pour cela, j'ai créé une variable $valeur. Notez que j'aurais pu aussi bien appeler cette variable $x ou $toto, cela n'a pas d'importance.

Ce que vous devez comprendre, ici, c'est que la boucle foreach va récupérer chaque valeur de notre tableau $fruits et va placer ces valeurs dans la variable $valeur.

A chaque nouveau tour de boucle, foreach récupère une nouvelle valeur qu'on echo immédiatement jusqu'à arriver à la dernière valeur de notre tableau.

Chapitre précédent

Chapitre suivant