Les tableaux

Les tableaux

2 May 2021

Les tableaux sont un moyen parfait pour stocker plusieurs données au sein d'une variable et le tout en l'ordonnant comme vous le souhaitez.

D'ailleurs, vous avez déjà vu les tableaux, sans même vous en souvenir je pense ?. Les superglobales sont des tableaux !

Tableau indexé ou numéroté

Dans un tableau, vous pouvez enregistrer tous types de valeurs dont vous avez besoin.
Il existe deux manières d'écrire un tableau.

// $tableau = array('Hello', 23, false, 45,26, 'Welcome');
$tableau = ['Hello', 23, false, 45,26, 'Welcome'];

La première possibilité est de la créer avec le mot cléarray et la seconde avec des crochets []. Pour ma part, j'utiliserais les crochets.

Les informations stockées dans ce tableau sont maintenant indexées par PHP, et ce, de manière automatique. C'est-à-dire que le système les range en leur attribuant un numéro. On nomme ce numéro un index, celui-ci est non seulement unique, mais commence toujours par zéro.

Dans l'exemple ci-dessus, la valeur "Hello" a l'index zéro.
La valeur "45,26", l'index trois, etc.

Lire une valeur

Pour extraire une valeur et la lire au besoin, nous utiliserons cette règle : $variable[index].

echo $tableau[1]; // Résultat : 23
echo $tableau[4]; // Résultat : Welcome

Si vous passez un index inexistant dans le tableau, une belle erreur s'affichera sur votre écran pour vous signaler qu'il ne trouve pas l'index en question.

echo $tableau[12];
// Résultat : Notice: Undefined Index

Tableau associatif

Le tableau associatif vous offre la possibilité de personnaliser l'index de votre tableau pour chaque valeur.

$client = [
  'nom' => 'Smith',
  'prenom' => 'John',
  'age' => 37
];

L'index peut être une chaîne de caractère ou tout autre type comme un booléen, un nombre, etc.

Lire une valeur

Nous utiliserons la même règle que le tableau indexé.

echo $client['nom']; // Résultat : Smith
echo $client['age']; // Résultat : 37

Tableau multidimensionnel

Le tableau multidimensionnel est un tableau stockant un autre tableau. Le level monte un peu là.

$clients = [
  ['nom' => 'Smith', 'prenom' => 'John', 'age' => 37],
  ['nom' => 'Doe', 'prenom' => 'Jane', 'age' => 24],
  ['nom' => 'Mark', 'prenom' => 'Jessica', 'age' => 56]
];

Le tableau $clients est un tableau indexé comportant trois tableaux associatifs. Le premier est indexé, car aucun index n'a été personnalisé.

Lire une valeur

La règle sera un peu différente pour ce type de tableau. Nous gardons la règle de base $variable[index], mais celle-ci devra évoluer.

Nous devons découper notre tableau. Si je veux récupérer le prénom de "Jane", je dois effectuer une descente dans les différents tableaux.

echo $clients[1]['prenom']; // Résultat : Jane

La première partie de mon appel $clients[1]permet de récupérer le tableau associatif rangé à cet index. La seconde partie $clients[1]['prenom']est la clé permettant d'obtenir la valeur qui y est associée.

Lire avec une boucle

Le plus simple pour lire les tableaux et d'utiliser une boucle. Pour cela, je vous laisse lire le cours suivant. ?