Класс RecursiveArrayIterator

(PHP 5 >= 5.1.0, PHP 7)

Введение

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

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

RecursiveArrayIterator extends ArrayIterator implements RecursiveIterator {
/* Наследуемые константы */
const int STD_PROP_LIST = 1 ;
const int ARRAY_AS_PROPS = 2 ;
/* Константы */
const int CHILD_ARRAYS_ONLY = 4 ;
/* Методы */
public hasChildren ( ) : bool
/* Наследуемые методы */
public ArrayIterator::append ( mixed $value ) : void
public ArrayIterator::asort ( ) : void
public ArrayIterator::__construct ( mixed $array = array() , int $flags = 0 )
public ArrayIterator::count ( ) : int
public ArrayIterator::getArrayCopy ( ) : array
public ArrayIterator::getFlags ( ) : int
public ArrayIterator::ksort ( ) : void
public ArrayIterator::natcasesort ( ) : void
public ArrayIterator::natsort ( ) : void
public ArrayIterator::next ( ) : 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
public ArrayIterator::seek ( int $position ) : void
public ArrayIterator::serialize ( ) : 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 ( ) : bool
}

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

Флаги RecursiveArrayIterator

RecursiveArrayIterator::CHILD_ARRAYS_ONLY

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

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

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

Содержание

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