# La clase RecursiveIteratorIterator

(PHP 5, PHP 7, PHP 8)

## Introducción

Se puede usar para recorrer iteradores recursivos.

## Sinopsis de la Clase

class RecursiveIteratorIterator implements OuterIterator {
/* Constantes */
const integer LEAVES_ONLY = 0;
const integer SELF_FIRST = 1;
const integer CHILD_FIRST = 2;
const integer CATCH_GET_CHILD = 16;
/* Métodos */
public beginChildren(): void
public beginIteration(): void
public callGetChildren(): RecursiveIterator
public callHasChildren(): bool
public __construct(Traversable `$iterator`, int `$mode` = RecursiveIteratorIterator::LEAVES_ONLY, int `$flags` = 0)
public current(): mixed
public endChildren(): void
public endIteration(): void
public getDepth(): int
public getInnerIterator(): iterator
public getMaxDepth(): mixed
public getSubIterator(int `$level` = ?): RecursiveIterator
public key(): mixed
public next(): void
public nextElement(): void
public rewind(): void
public setMaxDepth(int `$max_depth` = -1): void
public valid(): bool
/* Métodos heredados */
public OuterIterator::getInnerIterator(): ?Iterator
}

## Constantes predefinidas

`RecursiveIteratorIterator::LEAVES_ONLY`

`RecursiveIteratorIterator::SELF_FIRST`

`RecursiveIteratorIterator::CHILD_FIRST`

`RecursiveIteratorIterator::CATCH_GET_CHILD`

## Tabla de contenidos

- RecursiveIteratorIterator::beginChildren — Inicio del hijo
- RecursiveIteratorIterator::beginIteration — Inicio de la iteración
- RecursiveIteratorIterator::callGetChildren — Obtener hijo
- RecursiveIteratorIterator::callHasChildren — Comprueba si tiene hijos
- RecursiveIteratorIterator::__construct — Construir un objeto RecursiveIteratorIterator
- RecursiveIteratorIterator::current — Acceder al valor del elemento actual
- RecursiveIteratorIterator::endChildren — Final de los hijos
- RecursiveIteratorIterator::endIteration — Final de la iteración
- RecursiveIteratorIterator::getDepth — Obtener la profundidad actual de la iteración recursiva
- RecursiveIteratorIterator::getInnerIterator — Obtener el iterador interno
- RecursiveIteratorIterator::getMaxDepth — Obtener el máximo de profundidad
- RecursiveIteratorIterator::getSubIterator — El subiterador activo actual
- RecursiveIteratorIterator::key — Acceder a la clave actual
- RecursiveIteratorIterator::next — Moverse al siguiente elemento
- RecursiveIteratorIterator::nextElement — Siguiente elemento
- RecursiveIteratorIterator::rewind — Rebobina el iterador al primer elemento al nivel superior del iterador interno
- RecursiveIteratorIterator::setMaxDepth — Establecer el máximo de profundidad
- RecursiveIteratorIterator::valid — Comprueba si la posición actual es válida