glob

(PHP 4 >= 4.3.0, PHP 5)

glob -- 寻找与模式匹配的文件路径

说明

array glob ( string pattern [, int flags] )

glob() 函数依照 libc glob() 函数使用的规则寻找所有与 pattern 匹配的文件路径,类似于一般 shells 所用的规则一样。不进行缩写扩展或参数替代。

返回一个包含有匹配文件/目录的数组。如果出错返回 FALSE

有效标记为:

  • GLOB_MARK - 在每个返回的项目中加一个斜线

  • GLOB_NOSORT - 按照文件在目录中出现的原始顺序返回(不排序)

  • GLOB_NOCHECK - 如果没有文件匹配则返回用于搜索的模式

  • GLOB_NOESCAPE - 反斜线不转义元字符

  • GLOB_BRACE - 扩充 {a,b,c} 来匹配 'a','b' 或 'c'

  • GLOB_ONLYDIR - 仅返回与模式匹配的目录项

    注: 在 PHP 4.3.3 版本之前 GLOB_ONLYDIR 在 Windows 或者其它不使用 GNU C 库的系统上不可用

  • GLOB_ERR - 停止并读取错误信息(比如说不可读的目录),默认的情况下忽略所有错误

    注: GLOB_ERR 是 PHP 5.1 添加的。

例子 1. 怎样用 glob() 方便地替代 opendir() 和相关函数

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

上例的输出类似于:

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

注: 本函数不能作用于远程文件,被检查的文件必须通过服务器的文件系统访问。

参见 opendir()readdir()closedir()fnmatch()