each

(PHP 3, PHP 4 , PHP 5)

each --  Retourne chaque paire clé/valeur d'un tableau

Description

array each ( array &array )

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 1. 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 2. 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().

Attention

Assigner un tableau à une autre variable remet le pointeur du tableau original à zéro. A 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.