php8.5
Home/ Manual/ spl / filesystemiterator/ FilesystemIterator::__construct

FilesystemIterator::__construct

PHP function Edit on GitHub ✎

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

Constructs a new filesystem iterator

Description

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

Constructs a new filesystem iterator from the directory.

Parameters

directory

The path of the filesystem item to be iterated over.

flags

Flags may be provided which will affect the behavior of some methods. A list of the flags can found under FilesystemIterator predefined constants. They can also be set later with FilesystemIterator::setFlags

Errors/Exceptions

Throws an UnexpectedValueException if the directory does not exist.

Throws a ValueError if the directory is an empty string.

Changelog

VersionDescription
8.2.0Prior to PHP 8.2.0, FilesystemIterator::SKIP_DOTS was always set and could not be removed.
8.0.0Now throws a ValueError if directory is an empty string; previously it threw a RuntimeException.

Examples

FilesystemIterator::__construct() example

php
<?php
$it = new FilesystemIterator(dirname(__FILE__), FilesystemIterator::CURRENT_AS_FILEINFO);
foreach ($it as $fileinfo) {
    echo $fileinfo->getFilename() . "\n";
}
?>

Similar

output
.
..
apples.jpg
banana.jpg
example.php

Output of the above example prior to PHP 8.2.0 is similar to:

output
apples.jpg
banana.jpg
example.php

See Also

  • FilesystemIterator::setFlags
  • DirectoryIterator::__construct

Source: reference/spl/filesystemiterator/construct.xml · from the official PHP manual (php/doc-en)