RecursiveDirectoryIterator::__construct

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

RecursiveDirectoryIterator::__constructConstruit un objet RecursiveDirectoryIterator

Description

public RecursiveDirectoryIterator::__construct(string $directory, int $flags = FilesystemIterator::KEY_AS_PATHNAME | FilesystemIterator::CURRENT_AS_FILEINFO)

Construit un objet RecursiveDirectoryIterator() concernant le dossier souhaité.

Liste de paramètres

directory

Chemin du dossier sur lequel itérer.

flags

Drapeaux à passer pour changer le comportement de l'itérateur. Une liste de drapeaux peut être trouvée dans la liste des constantes de FilesystemIterator. Elles peuvent aussi être renseignées plus tard au moyen de FilesystemIterator::setFlags()

Erreurs / Exceptions

Lance une exception UnexpectedValueException si le répertoire n'existe pas.

Lance une exception ValueError si directory est une chaîne vide.

Historique

Version Description
8.0.0 Lance désormais une exception ValueError quand directory est une chaîne vide ; Auparavant, une RuntimeException était lancée.

Exemples

Exemple #1 Exemple avec RecursiveDirectoryIterator

<?php

$directory 
'/tmp';

$it = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($directory));

$it->rewind();
while(
$it->valid()) {

    if (!
$it->isDot()) {
        echo 
'SubPathName: ' $it->getSubPathName() . "\n";
        echo 
'SubPath:     ' $it->getSubPath() . "\n";
        echo 
'Key:         ' $it->key() . "\n\n";
    }

    
$it->next();
}

?>

Résultat de l'exemple ci-dessus est similaire à :

SubPathName: fruit/apple.xml
SubPath:     fruit
Key:         /tmp/fruit/apple.xml

SubPathName: stuff.xml
SubPath:     
Key:         /tmp/stuff.xml

SubPathName: veggies/carrot.xml
SubPath:     veggies
Key:         /tmp/veggies/carrot.xml

Voir aussi