glob
(PHP 4 >= 4.3.0, PHP 5)
glob — Находит файловые пути, совпадающие с шаблоном
Описание
Функция 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().
- PHP Руководство
- Функции по категориям
- Индекс функций
- Справочник функций
- Расширения для работы с файловой системой
- Функции для работы с файловой системой
- basename
- chgrp
- chmod
- chown
- clearstatcache
- copy
- delete
- dirname
- disk_free_space
- disk_total_space
- diskfreespace
- fclose
- feof
- fflush
- fgetc
- fgetcsv
- fgets
- fgetss
- file_exists
- file_get_contents
- file_put_contents
- file
- fileatime
- filectime
- filegroup
- fileinode
- filemtime
- fileowner
- fileperms
- filesize
- filetype
- flock
- fnmatch
- fopen
- fpassthru
- fputcsv
- fputs
- fread
- fscanf
- fseek
- fstat
- ftell
- ftruncate
- fwrite
- glob
- is_dir
- is_executable
- is_file
- is_link
- is_readable
- is_uploaded_file
- is_writable
- is_writeable
- lchgrp
- lchown
- link
- linkinfo
- lstat
- mkdir
- move_uploaded_file
- parse_ini_file
- parse_ini_string
- pathinfo
- pclose
- popen
- readfile
- readlink
- realpath_cache_get
- realpath_cache_size
- realpath
- rename
- rewind
- rmdir
- set_file_buffer
- stat
- symlink
- tempnam
- tmpfile
- touch
- umask
- unlink
Коментарии
Include dotfiles excluding . and .. special dirs with .[!.]*
<?php
$all_files = array_merge(glob('.[!.]*'), glob('*'));
// or
$all_files = glob('{.[!.],}*', GLOB_BRACE);
?>