 |
Forum |
|
|
Réagissez
dans les forums
de JDN Développeurs
|
Mal compris et pourtant indispensable quand il s'agit de
parcourir un tableau, le combo list()
/ each() fait partie de ces
fonctions que l'on utilise par habitude sans vraiment savoir
ce qu'il se cache derrière.
Voyons déjà un exemple typique de parcours de
tableau :
$tableau = array('le bon', 'la brute',
'le truand');
reset($tableau);
while ( list($clef, $valeur) = each($tableau) ) {
echo "$clef = $valeur <br />";
}
...affiche :
0 = le bon
1 = la brute
2 = le truand
Que
font nos deux fonctions ? Tout d'abord,
each() renvoi une paire clef-valeur du tableau donné,
à l'endroit où le pointeur est placé.
Une fois la paire lue, each() déplace
le pointeur d'un cran. Passée la dernière valeur,
elle renvoi false.
list() récupère
ensuite cette paire pour créer un tableau. A l'origine,
list() a été
conçue pour créer un tableau à partir
d'une suite de variables, mais l'utilisation avec each(),
le tout dans une boucle while(),
permet de parcourir le tableau...
Rappelons que depuis PHP4, il existe une manière plus
intuitive de parcourir un tableau pour ce même résultat
: foreach().
$tableau = array('le bon', 'la brute',
'le truand');
foreach ($tableau as $clef => $valeur) {
echo "$clef = $valeur <br />";
}
L'affichage sera le même.
|