glob

(PHP 4 >= 4.3.0, PHP 5)

glob — Находит файловые пути, совпадающие с шаблоном

Описание

array glob ( string $pattern [, int $flags ] )

Функция glob() ищет все пути, совпадающие с шаблоном pattern согласно правилам, используемым в функции glob() библиотеки libc, которые похожи на правила, используемые большинством распространённых оболочек. Раскрытие тильды или подстановки параметров не совершаются.

Возвращает массив, который содержит совпадающие файлы/директории или 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.

Пример #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().

Коментарии

Автор:
Include dotfiles excluding . and .. special dirs with .[!.]*

<?php
$all_files 
array_merge(glob('.[!.]*'), glob('*'));
// or
$all_files glob('{.[!.],}*'GLOB_BRACE);
?>
2021-01-25 14:25:29
http://php5.kiev.ua/manual/ru/function.glob.html

    Поддержать сайт на родительском проекте КГБ