RecursiveIteratorIterator::__construct

(PHP 5 >= 5.1.3, PHP 7, PHP 8)

RecursiveIteratorIterator::__constructConstruit un objet RecursiveIteratorIterator

Description

publicRecursiveIteratorIterator::__construct(Traversable$iterator, int$mode = RecursiveIteratorIterator::LEAVES_ONLY, int$flags = 0)

Crée un objet RecursiveIteratorIterator depuis un objet RecursiveIterator.

Liste de paramètres

iterator

L'itérateur utilisé pour la construction. Soit la méthode RecursiveIterator ou de la méthode IteratorAggregate.

mode

Le mode (optionnel). Les valeurs possibles sont :

flags

Drapeau optionnel. Les valeurs possibles sont RecursiveIteratorIterator::CATCH_GET_CHILD utilisé pour ignorer les exceptions lançées depuis les appels à la méthode RecursiveIteratorIterator::getChildren().

Exemples

Exemple #1 Parcours d'un RecursiveIteratorIterator

<?php
$array
= array(
array(
array(
array(
'leaf-0-0-0-0',
'leaf-0-0-0-1'
),
'leaf-0-0-0'
),
array(
array(
'leaf-0-1-0-0',
'leaf-0-1-0-1'
),
'leaf-0-1-0'
),
'leaf-0-0'
)
);

$iterator = new RecursiveIteratorIterator(
new
RecursiveArrayIterator($array),
$mode
);
foreach (
$iterator as $key => $leaf) {
echo
"$key => $leaf", PHP_EOL;
}
?>

Affichage avec $mode = RecursiveIteratorIterator::LEAVES_ONLY

0 => leaf-0-0-0-0 1 => leaf-0-0-0-1 0 => leaf-0-0-0 0 => leaf-0-1-0-0 1 => leaf-0-1-0-1 0 => leaf-0-1-0 0 => leaf-0-0

Affichage avec $mode = RecursiveIteratorIterator::SELF_FIRST

0 => Array 0 => Array 0 => Array 0 => leaf-0-0-0-0 1 => leaf-0-0-0-1 1 => leaf-0-0-0 1 => Array 0 => Array 0 => leaf-0-1-0-0 1 => leaf-0-1-0-1 1 => leaf-0-1-0 2 => leaf-0-0

Affichage avec $mode = RecursiveIteratorIterator::CHILD_FIRST

0 => leaf-0-0-0-0 1 => leaf-0-0-0-1 0 => Array 1 => leaf-0-0-0 0 => Array 0 => leaf-0-1-0-0 1 => leaf-0-1-0-1 0 => Array 1 => leaf-0-1-0 1 => Array 2 => leaf-0-0 0 => Array
To Top