(PHP 4 >= 4.3.0, PHP 5, PHP 7, PHP 8)
glob — Find pathnames matching a pattern
The glob() function searches for all the pathnames
matching pattern according to the rules used by
the libc glob() function, which is similar to the rules used by common
shells.
patternThe pattern. No tilde expansion or parameter substitution is done.
Special characters:
* - Matches zero or more characters.
? - Matches exactly one character (any character).
[...] - Matches one character from a group of
characters. If the first character is !,
matches any character not in the group.
\ - Escapes the following character,
except when the GLOB_NOESCAPE flag is used.
flagsValid flags:
GLOB_BRACE
(int)
Note:
GLOB_BRACEis not available on some non GNU systems, like Solaris or Alpine Linux.
GLOB_ERR
(int)
GLOB_ONLYDIR
(int)
GLOB_MARK
(int)
GLOB_NOSORT
(int)
GLOB_NOCHECK
(int)
GLOB_NOESCAPE
(int)
GLOB_AVAILABLE_FLAGS
(int)
GLOB_* flags combined.
Equivalent to 0 | GLOB_BRACE |
GLOB_MARK | GLOB_NOSORT |
GLOB_NOCHECK | GLOB_NOESCAPE |
GLOB_ERR | GLOB_ONLYDIR
Returns an array containing the matched files/directories, an empty array
if no file matched or false on error.
Note:
On some systems it is impossible to distinguish between empty match and an error.
Example #1 Convenient way how glob() can replace opendir() 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
Note: This function will not work on remote 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).