Forum und email

each

(PHP 4, PHP 5)

each — Devuelve el siguiente par clave/valor de una matriz y avanza el apuntador

Descripción

array each ( array &$matriz )

Devuelve el par clave/valor actual para la matriz y avanza el puntero de la misma. Esta pareja se devuele en una matriz de 4 elementos, con las claves 0, 1, key, y value. Los elementos 0 y key contienen el nombre de clave del elemento de la matriz, y 1 y value contienen los datos.

Si el puntero interno para la matriz apunta después del final del contenido de la matriz, each() devuelve FALSE.

Example#1 Ejemplos de each()

<?php
$chorrada 
= array ("bob""fred""jussi""jouni""egon""marliese");
$tonteria each ($chorrada);
print_r($tonteria);
?>

$tonteria ahora contiene los siguientes pares de llave/valor:

Array
(
    [1] => bob
    [value] => bob
    [0] => 0
    [key] => 0
)

<?php
$foo 
= array("Robert" => "Bob""Seppo" => "Sepi");
$bar each($foo);
print_r($bar);
?>

$tonteria ahora contiene los siguientes pares de llave/valor:

Array
(
    [1] => Bob
    [value] => Bob
    [0] => Robert
    [key] => Robert
)

each() se usa normalmente de forma conjunta a list() para recorrer una matriz; por ejemplo:

Example#2 Recorriendo una matriz con each()

<?php
$fruit 
= array('a' => 'apple''b' => 'banana''c' => 'cranberry');

reset($fruit);
while (list(
$key$val) = each($fruit)) {
    echo 
"$key => $val\n";
}
?>

El resultado del ejemplo seria:

a => apple
b => banana
c => cranberry

Cuando se ha ejecutado each(), el cursor de la matriz quedará en el siguiente elemento de la misma, o en el último si llega al final de ésta. Tiene que usar reset() si quiere recorrer la matriz otra vez usando each.

Caution

A causa de que asignar una matriz a otra variable reinicia el apuntador original de la matriz, nuestro ejemplo anterior pudo causar un ciclo sin fin tuvimos que asignar $fruit a otra variable dentro del ciclo.

Vea también: key(), list(), current(), reset(), next(), prev(), y foreach.