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()
foreach (glob("*.txt") as $filename) {
    echo "$filename size " . filesize($filename) . "\n";
}

Результат будет примерно таким:

funclist.txt size 44686 funcsummary.txt size 267625 quickref.txt size 137820
Пример 2. Получить все изображения из каталога
$fnames = glob("*.{gif,jpg,png}", GLOB_BRACE);
Пример 3. Получить все exe и ini файлы
print_r(glob("c:/windows/*/*.{exe,ini}", GLOB_BRACE));

Замечание: Эта функция не применима для работы с удаленными файлами, поскольку файл должен быть доступен через файловую систему сервера.

Смотрите также описание функций opendir(), readdir(), closedir() и fnmatch().

Все функции файл
Описание на ru2.php.net
Описание на php.ru