(PHP 5 >= 5.1.3)
RecursiveIteratorIterator::__construct — Construit un objet RecursiveIteratorIterator
$iterator
   [, int $mode = RecursiveIteratorIterator::LEAVES_ONLY
   [, int $flags = 0
  ]] )Crée un objet RecursiveIteratorIterator depuis un objet RecursiveIterator.
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 :
RecursiveIteratorIterator::LEAVES_ONLY
         - Valeur par défaut. Liste uniquement les feuilles
         de l'itération.
        RecursiveIteratorIterator::SELF_FIRST
         - Liste les feuilles et les parents de l'itération, avec les parents
         présentés en premier.
        RecursiveIteratorIterator::CHILD_FIRST
         - Liste les feuilles et les parents de l'itération,
         avec les feuilles présentées en premier.
        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().
      
Aucune valeur n'est retournée.
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