Les tableaux
CHAPITRE 7
132
PHP
En PHP, existent en apparence des tableaux usuels (repérés par un indice) et des tableaux associatifs. En
fait, les deux sont traités comme des tableaux associatifs. Leur gestion est totalement dynamique et l’allocation de mémoire est effectuée, non pas globalement comme dans beaucoup d’autres langages, mais au
fur et à mesure des besoins, c’est-à-dire à chaque fois qu’on attribue une valeur à un élément. N’oubliez
pas que PHP n’ayant pas de déclarations, les tableaux n’ont ni dimension, ni type. Les éléments d’un
même tableau pourront avoir des types différents.
$tab [3] = 12 ;
// associe l’entier 12 à l’indice 3
// aucun autre emplacement n’est réservé
$tab [10] = «bonjour» // associe la chaîne «bonjour» à l’indice 10
// $tab comporte maintenant seulement 2 éléments
Pour parcourir les éléments d’un tableau, on dispose d’une structure de répétition particulière nommée
foreach :
foreach ($tab as $elem)
{ // ici $elem représentera tour à tour chacun des élément du tableau $tab
// on peut utiliser $elem, mais aussi le modifier a
}
On notera que l’utilisation d’une répétition classique (for (i=1 ; i
que si l’on a bien créé un tableau d’éléments consécutifs.
Les éléments d’un tableau peuvent être eux-mêmes des tableaux.
La notion de débordement d’indice n’existe plus. Il est possible de tester l’existence ou l’inexistence d’un
élément à l’aide de la fonction isset : isset($tab[$i]) est vrai si l’élément de rang $i existe. Avec
l’expression count ($t), on obtient le nombre d’éléments existant dans $t, à un moment donné.
a.Ce qui n’est pas le cas de la répétition for de Java 5 appliquée aux collections (et nommée souvent for... each, bien
que le mot each ne figure pas dans sa syntaxe).
CHAPITRE 7
132
PHP
En PHP, existent en apparence des tableaux usuels (repérés par un indice) et des tableaux associatifs. En
fait, les deux sont traités comme des tableaux associatifs. Leur gestion est totalement dynamique et l’allocation de mémoire est effectuée, non pas globalement comme dans beaucoup d’autres langages, mais au
fur et à mesure des besoins, c’est-à-dire à chaque fois qu’on attribue une valeur à un élément. N’oubliez
pas que PHP n’ayant pas de déclarations, les tableaux n’ont ni dimension, ni type. Les éléments d’un
même tableau pourront avoir des types différents.
$tab [3] = 12 ;
// associe l’entier 12 à l’indice 3
// aucun autre emplacement n’est réservé
$tab [10] = «bonjour» // associe la chaîne «bonjour» à l’indice 10
// $tab comporte maintenant seulement 2 éléments
Pour parcourir les éléments d’un tableau, on dispose d’une structure de répétition particulière nommée
foreach :
foreach ($tab as $elem)
{ // ici $elem représentera tour à tour chacun des élément du tableau $tab
// on peut utiliser $elem, mais aussi le modifier a
}
On notera que l’utilisation d’une répétition classique (for (i=1 ; i
Les éléments d’un tableau peuvent être eux-mêmes des tableaux.
La notion de débordement d’indice n’existe plus. Il est possible de tester l’existence ou l’inexistence d’un
élément à l’aide de la fonction isset : isset($tab[$i]) est vrai si l’élément de rang $i existe. Avec
l’expression count ($t), on obtient le nombre d’éléments existant dans $t, à un moment donné.
a.Ce qui n’est pas le cas de la répétition for de Java 5 appliquée aux collections (et nommée souvent for... each, bien
que le mot each ne figure pas dans sa syntaxe).
