Передвигаем внутренний указатель массива - Функции prev, next, reset, each, end, current
0

Передвигаем внутренний указатель массива - Функции prev, next, reset, each, end, current

Начиная с версии php 4 и выше, к примеру 5 и 7 есть возможность использовать такую фишку как перемещение внутреннего указателя массива через функции prev, next, reset, each, end, current. Про них мы кратенько и поговорим, а в конце статьи будет небольшой пример их использования.

 

reset(), позволяет переместить внутренний казатель array к его первому элементу и вернет значение первого элемента этого массива. Если же массив пуст, то reset() вернет нам значение FALSE.

end() - Работает примерно также как и reset(), но ставит указатель внутренний на конец массива.

prev() - переместит указатель на одну позицию того же массива назад.

next() - Работает очень схоже с prev(), но как вы уже могли догадаться переместит указатель не назад, а вперед.

current() - Позволяет получить текущий используемый элемент массива, при ипользовании в начале будет выводить первый элемент.

each() - Работает немного иначе всех функций, с его помощью можно вывести пару ключ/значение из массива.

 

Пример использования reset(), next(), prev(), current(), end() в деле:

$array = array('первый шаг', 'второй шаг', 'третий шаг', 'четвертый шаг');
 
// по умолчанию указатель указывает на первый элемент
echo current($array) . "<br />\n"; // "первый шаг"
 
// пропускаем два шага    
next($array);
next($array);
echo current($array) . "<br />\n"; // "третий шаг"
 
// сбрасываем указатель, тем самым возвращаемся к первому шагу
reset($array);
echo current($array) . "<br />\n"; // "первый шаг"

 

Пример использования each() в деле:

$fruit = array('a' => 'apple', 'b' => 'banana', 'c' => 'cranberry');
 
reset($fruit);
while (list($key, $val) = each($fruit)) {
    echo "$key => $val\n";
}

 

Вот собственно и все, что тут можно рассказать, коротенько и ясно. Будут вопросы, как всегда пишите в комменты, будем решать и думать... 

Запись опубликована В категории: Изучение PHP

Shnapik

Вебмастер с опытом ищет приют! Возьмите меня, а то меня рвут!

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *