(PHP 5 >= 5.3.0, PHP 7, PHP 8)
FilesystemIterator::__construct — Создаёт новый итератор файловой системы
$directory, int $flags = FilesystemIterator::KEY_AS_PATHNAME | FilesystemIterator::CURRENT_AS_FILEINFO | FilesystemIterator::SKIP_DOTS)
   Создаёт новый объект итератора файловой системы на основе аргумента
   directory.
  
directoryПуть к объекту файловой системы по которому требуется навигация.
flagsПоведение некоторых методов можно задать с помощью флагов. Список этих флагов можно найти на странице предопределённых констант FilesystemIterator. Также их можно задать позже методом FilesystemIterator::setFlags().
   Выбрасывает исключение UnexpectedValueException,
   если директория directory не существует.
  
   Выбрасывает исключение ValueError,
   если параметр directory содержит пустую строку.
  
| Версия | Описание | 
|---|---|
| 8.2.0 | До версии PHP 8.2.0, константа FilesystemIterator::SKIP_DOTSвсегда была установлена и не могла быть удалена. | 
| 8.0.0 | Теперь выбрасывает исключение ValueError,
        если параметр directoryсодержит пустую строку;
        ранее выбрасывалось исключение RuntimeException. | 
Пример #1 Пример использования FilesystemIterator::__construct()
<?php
$it = new FilesystemIterator(dirname(__FILE__), FilesystemIterator::CURRENT_AS_FILEINFO);
foreach ($it as $fileinfo) {
    echo $fileinfo->getFilename() . "\n";
}
?>Результат выполнения приведённого примера в PHP 8.2 аналогичен:
. .. apples.jpg banana.jpg example.php
Вывод приведённого выше примера до версии PHP 8.2.0 выглядит следующим образом:
apples.jpg banana.jpg example.php
