Include dotfiles excluding . and .. special dirs with .[!.]*
<?php
$all_files = array_merge(glob('.[!.]*'), glob('*'));
// or
$all_files = glob('{.[!.],}*', GLOB_BRACE);
?>glob
Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.
glob
Референца за `function.glob.php` со подобрена типографија и навигација.
glob
(PHP 4 >= 4.3.0, PHP 5, PHP 7, PHP 8)
glob — Најди патеки што одговараат на шема
= NULL
На glob() функцијата бара сите патеки што одговараат pattern според правилата што ги користи функцијата glob() на libc, која е слична на правилата што ги користат обичните школки.
Поведението на Unix системи и macOS се одредува според имплементацијата на glob() на системот. На Windows, се користи имплементација што е во согласност со дефиницијата POSIX 1003.2 за glob(), и вклучува проширување за ракување со [!...] конвенцијата за негирање на опсег.
Параметри
pattern-
Шемата. Не се врши експанзија на тилда или замена на параметри.
Специјални знаци:
-
*- Одговара на нула или повеќе знаци. -
?- Одговара на точно еден знак (било кој знак). -
[...]- Одговара на еден знак од група знаци. Ако првиот знак е!, одговара на кој било знак што не е во групата. -
{a,b,c}- Одговара на еден стринг од група стрингови разделени со запирка когаGLOB_BRACEфлагот се користи. -
\- Избегнува следниот знак, освен когаGLOB_NOESCAPEфлагот се користи.
-
flags-
Било кој од
GLOB_*constants.
Вратени вредности
Враќа низа што ги содржи соодветните датотеки/директориуми, празна низа ако не се најде соодветна датотека или false при грешка. Освен ако GLOB_NOSORT не беше користено, имињата ќе бидат сортирани алфанумерички.
Примери
Пример #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
Пример #2 Пример со посложена шема
<?php
foreach (glob("path/*/*.{txt,md}", \GLOB_BRACE) as $filename) {
echo "$filename\n";
}
?>Горниот пример ќе прикаже нешто слично на:
path/docs/mailinglist-rules.md path/docs/README.md path/docs/release-process.md path/pear/install-pear.txt path/Zend/README.md
Белешки
Забелешка: Оваа функција нема да работи на Оваа опција овозможува fopen обвивки свесни за URL-и кои овозможуваат пристап до URL објекти како датотеки. Стандардни обвивки се обезбедени за пристап до бидејќи датотеката што треба да се испита мора да биде достапна преку датотечниот систем на серверот.
Забелешка: Оваа функција не е достапна на некои системи (на пр. стар Sun OS).
Види Исто така
- opendir() - Отвори рачка на директориум
- readdir() - Читај запис од рачка на директориум
- closedir() - Затвори рачка за директориум
- fnmatch() - Спореди име на датотека со шема