each
(PHP 4, PHP 5, PHP 7)
each — Devuelve cada par clave/valor de un array
Advertencia
Esta funcionalidad está OBSOLETA a partir de PHP 7.2.0 y ha sido
ELIMINADA a partir de PHP 8.0.0.
Descripción
Tras cada llamada a each(), el puntero del array se
desplaza al siguiente elemento, o más allá del último elemento, cuando se llega
al final. Debe utilizarse reset() si se desea recorrer
el array nuevamente con each().
Parámetros
array
-
El array de entrada.
Valores devueltos
Devuelve el par clave/valor actual del array
array y avanza el puntero
del array. Este par se devuelve en un array
de 4 elementos, con las claves 0, 1,
key, y value. Los
elementos 0 y key
contienen el nombre de la clave y 1 y
value contienen el valor.
Si el puntero interno del array está más allá del final del array,
each() devuelve false.
Ejemplos
Ejemplo #1 Ejemplo con each()
<?php
$foo = array("bob", "fred", "jussi", "jouni", "egon", "marliese");
$bar = each($foo);
print_r($bar);
?>
$bar contiene ahora las claves/valores siguientes :
Array
(
[1] => bob
[value] => bob
[0] => 0
[key] => 0
)
each() se utiliza típicamente en conjunción
con list() para revisar un array.
Por ejemplo :
Ejemplo #2 Recorrer un array con each()
<?php
$fruit = array('a' => 'apple', 'b' => 'banana', 'c' => 'cranberry');
reset($fruit);
while (list($key, $val) = each($fruit)) {
echo "$key => $val\n";
}
?>
El ejemplo anterior mostrará:
a => apple
b => banana
c => cranberry
Precaución
Asignar un array a otra variable reinicia el puntero del array original
a cero. Debido a este comportamiento, se podría haber provocado una
iteración infinita en nuestro ejemplo si se hubiera asignado
$fruit a otra variable dentro de nuestro ciclo.
Advertencia
each() también acepta objetos, pero puede devolver
un resultado no esperado. Por lo tanto, no se recomienda utilizar esta
función con objetos.
Ver también
- key() - Devuelve una clave de un array asociativo
- list() - Asigna variables como si fueran un array
- current() - Devuelve el elemento actual del array
- reset() - Reinicia el puntero interno del array al principio
- next() - Avance el puntero interno de un array
- prev() - Retrocede el puntero actual del array
foreach
- Iteración de objetos