Справочник
WEB - языков

www.spravkaweb.ru Rambler's Top100
 Вы находитесь: Главная/PHP/Работа с массивами.Курсор массиваРаспечатать 
Разделы
Новости
Сразу все
HTML
JavaScript
VBScript
CSS
Flash
Perl
PHP
MySQL
SSI
VRML
Дополнительно
Советы
Download
Форум
Гостевая
Ссылки
Написать мне
Поиск:
Рассылки
Subscribe.Ru:

PHP

<--Назад | Вернуться к списку | Дальше-->
Работа с массивами
Курсор массива
reset
Производит сброс курсора массива.

Синтаксис :
mixed reset(array arr);

Функция reset() устанавливает внутренний курсор массива arr на его начало и возвращает значение начального элемента.

end
Производит перенос курсора в конец массива.

Синтаксис :
mixed end(array arr);

Функция end() устанавливает внутренний курсор массива arr на последний элемент и возвращает значение начального элемента.

next
Производит перенос курсора вперед.

Синтаксис :
mixed next(array arr);

Функция next() возвращает значение элемента, на котором в данный момент находится курсор, и перемещает курсор массива на следующий элемент. Возвращает false, если элементов больше не осталось.

Также false возвращается, если встречается элемент с пустым значением, следовательно для корректной работы с массивом, содержащим пустые элементы, лучще использовать функцию each().

prev
Производит перенос курсора назад.

Синтаксис :
mixed prev(array arr);

Функция prev() возвращает значение элемента, на котором в данный момент находится курсор, и перемещает курсор массива на предыдущий элемент. Возвращает false, если элементов больше не осталось.

Также false возвращается, если встречается элемент с пустым значением, следовательно для корректной работы с массивом, содержащим пустые элементы, лучще использовать функцию each().

current
Определение текущего элемента массива.

Синтаксис :
mixed current(array arr);

Функция current() возвращает значение элемента, на котором в данный момент находится курсор массива, при этом не сдвигая курсор.

Функция возвратит false, если курсор оказался вне пределов массива, или массив не имеет элементов.

pos
Определение текущего элемента массива.

Синтаксис :
mixed pos(array arr);

Эта функция синоним функции current().

key
Функция возвращает индекс текущего элемента массива.

Синтаксис :
mixed key(array arr);

each
Получение текущего элемента массива.

Синтаксис :
array each(array arr);

Функция each() возвращает в массиве пару "индекс и значение" текущего элемента массива, на который указывает внутренний курсор, и сдвигает курсор массива на следующий элемент. Возващаемый массив имеет четыре элемента:
[0] => индекс
[1] => "значение"
[key] => индекс
[value] => "значение"
Функция возвращает false, если курсор достиг конца массива.
$foo = array("bob", "fred", "jussi", "joini", "egon", "marliese");
$bar = each($foo);
// теперь $bar = (0=>0, 1=>"bob", key=>0, value=>"bob")
Обычно функцию each() используют в паре с list() для перебора элементов массива:
reset($HTTP_POST_VARS);
while(list($key, $val) = each($HTTP_POST_VARS)) {
  echo "$key = %val<BR>";
}

array_walk
Применение функции к элементам массива.

Синтаксис :
int array_walk(array arr string func, mixed userdata);

Функция array_walk() применяет пользовательскую функцию func к каждому элементу массива arr. В пользовательскую функцию передаются три или два (в случае, если аргумент userdata не указан) аргумента: значение текущего элемента, его индекс и аргумент userdata.

В случае, если func требует более трех аргументов, при каждом ее вызове будет выдаваться предупреждение. Чтобы блокировать выдачу этих предупреждений, поставте знак "@" перед функцией array_walk() или воспользуйтесь функцией error_reporting().

Функция func будет получать значения и индексы массива arr по занчению, т.е. не сможет вносить в него изменения. Если это необходимо, передайте аргумент arr по ссылке, указав перед его именем "&", и тогда все изменения отразяться в массиве.

В PHP 4 необходимо явно вызывать функцию reset(), чтобы установить внутренний курсор на первый элемент.
$v = array("d"=>"A1", "a"=>"B2", "b"=>"C3", "c"=>"D4");
function test_alter(&$item1, $key, $prefix) { // по ссылке
  $item1 = "$prefix $item1";
};

function test_print($item2, $key) {
  echo "$key. $item2<BR>";
};

array_walk($v, "test_print");
reset($v);
array_walk($v, "test_alter");
reset($v);
array_walk($v, "test_print");
По материалам книги Игоря Григина "PHP 4. Специальный справочник."
www.piter.com
Наверх / К оглавлению
 
Download
Скачать справочник по PHP
Что нового:
05.07.2004
  • В разделе PHP добавлены некоторые функции для работы с картинками (библиотека GD):
    imagetypes(), ...
  • В разделе JavaScript добавлены свойства на букву D, E, F, H, I
  • В разделе Советы добавлена статья, рассказывающая как вставить в html-страницу документы MS Office (Word, Excel и т.д.)
  • Голосование:
    Что Вам больше всего не нравится в справочнике:
    Все нравится.
    Ничего не нравится.
    Мало примеров.
    Неполное описание функций.
    Не все функции описаны.
    В справочнике мало языков.
    А мне все равно.
    Другое.
    Счетчики:
    Rambler's Top100
    Сделать страницу стартовой Сделать страницу стартовой
    Добавить страницу в избранное Добавить сайт в избранное
    Сообщить об найденной ошибке Сообщить об ошибке