each

(PHP 4, PHP 5, PHP 7)

eachDevolver el par clave/valor actual de un array y avanzar el cursor del array

Descripción

each ( array &$array ) : array

Devuelve el par clave/valor actual de un array y avanza el cursor del array.

Después de que each() haya sido ejecutado, el cursor del array será puesto en el siguiente elemento del array, o pasado el último elemento si alcanza el final del array. Se tiene que usar reset() si se quiere atravesar de nuevo el array usando each.

Parámetros

array

El array de entrada.

Valores devueltos

Devuelve el par clave/valor actual del array dado por array. Este par es devuelto en un array de cuatro elementos, con las claves 0, 1, key, y value. Los elementos 0 y key contienen el nombre de la clave del elemento del array, y 1 y value contienen la información.

Si el puntero interno del array apunta al final del contenido de array, each() devuelve FALSE.

Ejemplos

Ejemplo #1 Ejemplo de each()

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

$bar ahora contienelos siguientes pares clave/valor:

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

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

$bar ahora contienelos siguientes pares clave/valor:

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

each() se usa normalmente junto con list() para atravesar un array. Aquí hay un ejemplo:

Ejemplo #2 Atravesar un array con each()

<?php
$fruta 
= array('a' => 'manzana''b' => 'banana''c' => 'arándano');

reset($fruta);
while (list(
$clave$valor) = each($fruta)) {
    echo 
"$clave => $valor\n";
}
?>

El resultado del ejemplo sería:

a => manzana
b => banana
c => arándano

Precaución

Ya que asignar un array a otra variable reinicia el puntero del array original (nuestro ejemplo de arriba causaría un bucle sin fin), hemos asignado $fruta a otra variable dentro del bucle.

Advertencia

each() también aceptará objetos, pero puede devolver resultados inesperados. Por lo tanto, no se recomienda iterar propiedades de objetos con each().

Ver también

  • key() - Obtiene una clave de un array
  • list() - Asignar variables como si fueran un array
  • current() - Devuelve el elemento actual en un array
  • reset() - Establece el puntero interno de un array a su primer elemento
  • next() - Avanza el puntero interno de un array
  • prev() - Rebobina el puntero interno del array
  • foreach
  • Iteración de Objetos