GlobIterator::__construct

Construct a directory using glob

&reftitle.description; public `GlobIterator::__construct` `string` `pattern` `int` `flags` FilesystemIterator::KEY_AS_PATHNAME | FilesystemIterator::CURRENT_AS_FILEINFO

Constructs a new directory iterator from a glob expression.

&reftitle.parameters;

`pattern`

- A `glob` pattern.

`flags`

- Option flags, the flags may be a bitmask of the `FilesystemIterator` constants.

&reftitle.errors;

Throws an `UnexpectedValueException` if the `directory` does not exist.

Throws a `ValueError` if the `directory` is an empty string.

&reftitle.changelog;

&Version; | &Description;
8.0.0 | Now throws a `ValueError` if `directory` is an empty string; previously it threw a `RuntimeException`.

&reftitle.examples;

### `GlobIterator` example

    <?php
    $iterator = new GlobIterator('*.dll', FilesystemIterator::KEY_AS_FILENAME);

    if (!$iterator->count()) {
        echo 'No matches';
    } else {
        $n = 0;

        printf("Matched %d item(s)\r\n", $iterator->count());

        foreach ($iterator as $item) {
            printf("[%d] %s\r\n", ++$n, $iterator->key());
        }
    }
    ?>

&example.outputs.similar;

    Matched 2 item(s)
    [1] php5ts.dll
    [2] php_gd2.dll

&reftitle.seealso;

- `DirectoryIterator::__construct`
- `GlobIterator::count`
- `glob`