PHP中有许多的函数,我们很少听说,但是却有很实用的功能,例如:glob()。许多人希望简单的遍历目录,如果知道了这个函数,必将事半功倍。
Glob从PHP4就被包含在内核中了,不是一个新的函数,但就像checkdnsrr()一样,很少有人知道这个函数。下面我们就看看这个如何使用这个函数遍历一个目录。
代码
foreach(glob('dir/*.php') as $filename)
{
echo 'Filename: ' . $filename . '
';
}
Glob支持两个参数,其中第二个是可选的。 上面的代码将返回dir目录下的扩展名为php的所有文件。
可选参数
可以用第二个参数。达到不同的目的。例如下面的代码返回dir目录下的两种类型的文件
$aFiles = glob('{dir/*.jpg,myDirectory/*.gif}', GLOB_BRACE);
GLOB_BRACE告诉glob(),我用了大括号扩起了两种不同的文件扩展名。
PHP定义了如下的常量,可以作为第二个参数
GLOB_MARK - 在每个返回的结果中间价格斜线
GLOB_NOSORT - 不排序返回文件(按他们出现的顺序)
GLOB_NOCHECK -如果没找到文件,就返回搜索模式(例如上面的{dir/*.jpg,myDirectory/*.gif})
GLOB_NOESCAPE - 不转意,即反斜线不作为转意字符使用
GLOB_BRACE - 用大括号括起来的搜索模式
GLOB_ONLYDIR - 只返回符合搜索条件的目录名
GLOB_ERR -遇到错误自动停止,(默认是继续查找)