简单的问题 - 如何使用 glob()
列出 .htaccess
文件?
如果有人来到这里,
由于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
}
}
->isDot()
正在吞噬我的.htaccess
文件和.
以及..
。也许如果有人希望全面调查并在手册中发布一个注释,这将有助于未来的研究人员。http://php.net/manual/en/directoryiterator.isdot.php 对于.
和..
的字面检查似乎是必要的。 - mickmackusa.
、..
和.DB_STORE
文件,也不会排除 .htaccess
文件。 - hassan.htaccess
,.DB_STORE
,a.htaccess
”,会产生以下输出:https://i.imgur.com/fWWCTa9.png - hassan
glob.h
系统调用常量GLOB_PERIOD
可用。因此,这更像是一种绕过方式。 - marioarray_map('unlink', glob(__DIR__."/*/folder/*.*"));
。预期结果:所有文件都被删除了-但这不起作用。简单的通配符也不起作用:array_map('unlink', glob(__DIR__."/*/scripts/webinterface/*"));
。必须将glob模式组合起来匹配两者:{.*,*.*}
(点文件+所有文件)。我猜,如果我将其归类为错误,我会得到预期的行为作为响应并直接关闭... =)。 - Jens A. Koch