PHP: Hypertext Preprocessor (original) (raw)

glob

(PHP 4 >= 4.3.0, PHP 5, PHP 7, PHP 8)

glob — Find pathnames matching a pattern

Description

The behavior on Unix systems and macOS is determined by the system's implementation of glob(). On Windows, an implementation that conforms to the POSIX 1003.2 definition for glob() is used, and it includes an extension to handle the [!...] convention for negating a range.

Parameters

pattern

The pattern. No tilde expansion or parameter substitution is done.

Special characters:

flags

Any of the [GLOB_*](filesystem.constants.php#constant.glob-available-flags) constants.

Return Values

Returns an array containing the matched files/directories, an empty array if no file matched or [false](reserved.constants.php#constant.false) on error. Unless GLOB_NOSORT was used, the names will be sorted alphanumerically.

Examples

Example #1 Convenient way how glob() can replaceopendir() and friends.

<?php foreach (glob("*.txt") as $filename) { echo "$filename size " . filesize($filename) . "\n"; } ?>

The above example will output something similar to:

funclist.txt size 44686 funcsummary.txt size 267625 quickref.txt size 137820

Example #2 Example with a more complex pattern

<?php foreach (glob("path/*/*.{txt,md}", \GLOB_BRACE) as $filename) { echo "$filename\n"; } ?>

The above example will output something similar to:

path/docs/mailinglist-rules.md path/docs/README.md path/docs/release-process.md path/pear/install-pear.txt path/Zend/README.md

Notes

Note: This function will not work onremote files as the file to be examined must be accessible via the server's filesystem.

Note: This function isn't available on some systems (e.g. old Sun OS).

See Also

Found A Problem?

Anonymous

4 years ago

`Include dotfiles excluding . and .. special dirs with .[!.]*

`

Anonymous

4 months ago

`Files from the directory and its subdirectories (one level):

Two levels:

`

vrana at php dot net

2 months ago

`The simplest recursive glob:

`