Простой вопрос - Как указать .htaccess
файлов с помощью glob()
?PHP glob() не находит .htaccess
4
A
ответ
11
glob()
делает список «скрытые» файлы (файлы, начинающиеся с .
включая директории .
и ..
), но только если вы явно спросить его:
glob(".*");
Фильтрация возвращаемый glob()
массив для .htaccess
записей с preg_grep
:
$files = glob(".*") AND $files = preg_grep('/\.htaccess$/', $files);
альтернатива Glob конечно будет только с помощью scandir()
и фильтр (fnmatch
или регулярное выражение):
preg_grep('/^\.\w+/', scandir("."))
0
в случае какой-либо орган пришел сюда,
с SPL
реализованного в PHP, и предлагает некоторые интересные итераторы, вы можете использовать из в список ваши скрытые файлы, такие как .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
}
}
+1: Спасибо за разъяснение Марио. – hakre
Фактическая особенность заключается в том, что PHP не просто делает системный вызов 'glob.h' постоянным' GLOB_PERIOD' доступным. Так что это скорее обход. – mario
Да, добавленный код, довольно долго использовать этот формат значения параметра, чтобы получить эти файлы, начиная с периода. Интересно, почему константа не была интегрирована. Разве эти окна любят? – hakre