PHP glob()找不到.htaccess

时间:2011-12-21 18:15:49

标签: php .htaccess glob

简单问题 - 如何使用.htaccess列出glob()个文件?

2 个答案:

答案 0 :(得分:11)

glob()会列出"隐藏"文件(以.开头的文件,包括目录...),但前提是您明确要求:

 glob(".*");

使用preg_grepglob()条目过滤返回的.htaccess数组:

 $files = glob(".*") AND $files = preg_grep('/\.htaccess$/', $files);

当然,glob的替代方法是使用scandir()和过滤器(fnmatch或正则表达式):

 preg_grep('/^\.\w+/', scandir("."))

答案 1 :(得分:0)

如果有人来到这里,

由于PHP中实现的SPL,并提供了一些很酷的迭代器,你可以利用它列出你的隐藏文件,如.htaccess文件或它的替代隐藏的linux文件。

使用DirectoryIterator列出所有目录内容,并排除...,如下所示:

$path = 'path/to/dir';
$files = new DirectoryIterator($path);

foreach ($files as $file) {
    // excluding the . and ..
    if ($file->isDot() === false) {
        // make some stuff
    }
}