Класс RecursiveArrayIterator

(PHP 5 >= 5.1.0, PHP 7)

Введение

Этот итератор позволяет сбросить и изменить значения и ключи во время прохода по массивам и объектам таким же образом, как и ArrayIterator. Кроме того, можно перебирать текущие записи итератора.

Обзор классов

RecursiveArrayIterator extends ArrayIterator implements RecursiveIterator {
/* Наследуемые константы */
const integer STD_PROP_LIST = 1 ;
const integer ARRAY_AS_PROPS = 2 ;
/* Константы */
const integer CHILD_ARRAYS_ONLY = 4 ;
/* Методы */
public hasChildren ( void ) : bool
/* Наследуемые методы */
public ArrayIterator::append ( mixed $value ) : void
public ArrayIterator::asort ( void ) : void
public ArrayIterator::__construct ([ mixed $array = array() [, int $flags = 0 ]] )
public ArrayIterator::count ( void ) : int
public ArrayIterator::current ( void ) : mixed
public ArrayIterator::getArrayCopy ( void ) : array
public ArrayIterator::getFlags ( void ) : int
public ArrayIterator::key ( void ) : mixed
public ArrayIterator::ksort ( void ) : void
public ArrayIterator::natcasesort ( void ) : void
public ArrayIterator::natsort ( void ) : void
public ArrayIterator::next ( void ) : void
public ArrayIterator::offsetExists ( mixed $index ) : bool
public ArrayIterator::offsetGet ( mixed $index ) : mixed
public ArrayIterator::offsetSet ( mixed $index , mixed $newval ) : void
public ArrayIterator::offsetUnset ( mixed $index ) : void
public ArrayIterator::rewind ( void ) : void
public ArrayIterator::seek ( int $position ) : void
public ArrayIterator::serialize ( void ) : string
public ArrayIterator::setFlags ( string $flags ) : void
public ArrayIterator::uasort ( callable $cmp_function ) : void
public ArrayIterator::uksort ( callable $cmp_function ) : void
public ArrayIterator::unserialize ( string $serialized ) : void
public ArrayIterator::valid ( void ) : bool
}

Предопределенные константы

Флаги RecursiveArrayIterator

RecursiveArrayIterator::CHILD_ARRAYS_ONLY

Применим только к массивам (не к объектам) как имеющих детей для итерации.

Список изменений

Версия Описание
5.3.0 Добавлен флаг CHILD_ARRAYS_ONLY.

Содержание

  • RecursiveArrayIterator::getChildren — Возвращает итератор для текущего элемента, если этот элемент является массивом (array) или объектом (object)
  • RecursiveArrayIterator::hasChildren — Определяет, является ли текущий элемент массивом или объектом