(PHP 4, PHP 5)
each — Retourne chaque paire clé/valeur d'un tableau
each() retourne la paire clé/valeur courante du tableau array et avance le pointeur de tableau. Cette paire est retournée dans un tableau de 4 éléments, avec les clés 0 , 1 , key , et value . Les éléments 0 et key contiennent le nom de la clé et 1 et value contiennent la valeur.
Si le pointeur interne de tableau est au-delà de la fin du tableau, each() retourne FALSE .
Exemple 445. Exemples avec each()
<?php
$foo
= array(
"ghislain"
,
"damien"
,
"didou"
,
"guillaume"
,
"jim"
,
"christophe"
);
$bar
=
each
(
$foo
);
print_r
(
$bar
);
?>
L'exemple ci-dessus va afficher :
Array ( [1] => ghislain [value] => ghislain [0] => 0 [key] => 0 )
<?php
$foo
= array(
"Mehdi"
=>
"Didou"
,
"Damien"
=>
"Dams"
);
$bar
=
each
(
$foo
);
print_r
(
$bar
);
?>
L'exemple ci-dessus va afficher :
Array ( [1] => Didou [value] => Didou [0] => Mehdi [key] => Mehdi )
each() est typiquement utilisée en conjonction avec list() pour passer en revue un tableau. Par exemple :
Exemple 446. Passer en revue un tableau avec each()
<?php
$fruit
= array(
'a'
=>
'pomme'
,
'b'
=>
'banane'
,
'c'
=>
'canneberge'
);
reset
(
$fruit
);
while (list(
$key
,
$val
) =
each
(
$fruit
)) {
echo
"$key => $val\n"
;
}
?>
L'exemple ci-dessus va afficher :
a => pomme b => banane c => canneberge
Après chaque appel à each() , le pointeur de tableau est déplacé au prochain élément, ou sur le dernier élément, lorsqu'on arrive à la fin. Vous devez utiliser reset() si vous voulez traverser le tableau à nouveau avec each() .
Assigner un tableau à une autre variable remet le pointeur du tableau original à zéro. À cause de ce comportement, nous aurions pu provoquer une boucle infinie dans notre exemple si nous avions assigné $fruit à une autre variable dans notre boucle.
Voir aussi key() , list() , current() , reset() , next() , prev() et foreach .