(PHP 4 >= 4.3.0, PHP 5, PHP 7)
glob – 寻找与模式匹配的文件路径
说明
glob
( string $pattern
[, int $flags = 0
] ) : array
glob() 函数依照 libc glob() 函数使用的规则寻找所有与
pattern 匹配的文件路径,类似于一般 shells
所用的规则一样。不进行缩写扩展或参数替代。
参数
pattern
The pattern. No tilde expansion or parameter substitution is done.
flags
有效标记有:
GLOB_MARK – 在每个返回的项目中加一个斜线
GLOB_NOSORT – 按照文件在目录中出现的原始顺序返回(不排序)
GLOB_NOCHECK – 如果没有文件匹配则返回用于搜索的模式
GLOB_NOESCAPE – 反斜线不转义元字符
GLOB_BRACE – 扩充 {a,b,c} 来匹配 'a','b' 或 'c'
GLOB_ONLYDIR – 仅返回与模式匹配的目录项
GLOB_ERR – 停止并读取错误信息(比如说不可读的目录),默认的情况下忽略所有错误
返回值
返回一个包含有匹配文件/目录的数组。如果出错返回 FALSE。
Note:
On some systems it is impossible to distinguish between empty match and an
error.
更新日志
版本
说明
5.1.0
GLOB_ERR was added
4.3.3
GLOB_ONLYDIR
在 Windows 或者其它不使用 GNU C 库的系统上开始可用。
范例
Example #1 怎样用 glob() 方便地替代
[opendir()](php7/function.opendir) 和相关函数
foreach (glob("*.txt") as $filename) {
echo "$filename size " . filesize($filename) . "n";
}
?>
以上例程的输出类似于:
funclist.txt size 44686
funcsummary.txt size 267625
quickref.txt size 137820
注释
Note: 此函数不能作用于[远程文件](php7/features.remote-files),被检查的文件必须是可通过服务器的文件系统访问的。
Note:
此函数在一些系统上还不能工作(例如一些旧的 Sun OS)。
Note:
GLOB_BRACE 在一些非 GNU 系统上无效,比如 Solaris。
参见
[opendir()](php7/function.opendir) – 打开目录句柄
[readdir()](php7/function.readdir) – 从目录句柄中读取条目
[closedir()](php7/function.closedir) – 关闭目录句柄
[fnmatch()](php7/function.fnmatch) – 用模式匹配文件名