Описание
array
each ( array &array )
Возвращает текущую пару ключ/значение из массива
array и смещает его указатель. Эта
пара возвращается в виде массива из четырёх элементов, со следующими ключами:
0, 1,
key и
value. Элементы 0 и
key содержат ключ элемента
массива, а элементы 1 и
value содержат его значение.
Если внутренний указатель массива указывает на его конец,
each() возвратит
FALSE.
Пример 1. Примеры использования each()
<?php $foo = array("bob", "fred", "jussi", "jouni", "egon", "marliese"); $bar = each($foo); print_r($bar); ?>
|
$bar теперь содержит следующие пары ключ/значение:
Array
(
[1] => bob
[value] => bob
[0] => 0
[key] => 0
) |
|
each() обычно используется совместно с
list() для обхода массива, как
в этом примере:
Пример 2. Обход массива функцией each()
<?php $fruit = array('a' => 'apple', 'b' => 'banana', 'c' => 'cranberry');
reset($fruit); while (list($key, $val) = each($fruit)) { echo "$key => $val "; } ?>
|
Результат выполнения данного примера: a => apple
b => banana
c => cranberry |
|
После выполнения each(), указатель массива
перемещается к следующему его элементу, пока не будет достигнут конец массива.
Вы можете использовать
функцию reset() для повторного обхода массива при помощи each.
Предостережение |
Посколько добавление элемента в массив сбрасывает указатель,
вышеприведённый пример может привести бесконечному циклу, если
мы будем присваивать $fruit другие значения внутри цикла.
|
См. также key(), list(),
current(), reset(),
next(), prev() и
foreach.