Синтакса:
Синтакса функције глоб () дата је у наставку. Ова функција може имати два аргумента. Први аргумент узима вредност узорка која ће се користити за претрагу датотеке и директоријума. Други аргумент је опционалан који се користи за генерисање резултата на различите начине. Уобичајени симболи који се користе за дефинисање обрасца и различити типови заставица који се могу користити у другом аргументу ове функције описани су у наставку.
низ глоб (стринг $ паттерн [, инт $ флагс = 0])У обрасцу се најчешће користе симболи
Шаблон | Сврха |
---|---|
? | Користи се за подударање са тачно једним знаком (било којим). |
* | Користи се за подударање са нула или више знакова. |
\ | Користи се за избегавање знакова када се користи застава ГЛОБ_НОЕСЦАПЕ. |
[…] | Користи се за подударање распона знакова. |
Вредности заставе
Следеће вредности заставе могу се користити у опционалном аргументу функције глоб ().
Вредност | Сврха |
---|---|
ГЛОБ_МАРК | Додаје косу црту са сваком враћеном ставком. |
ГЛОБ_НОСОРТ | Враћа несортиране датотеке које се појављују у директоријуму. |
ГЛОБ_НОЦХЕЦК | Враћа образац претраживања ако није пронађено подударање. |
ГЛОБ_НОЕСЦАПЕ | Користи косе косе црте и не наводи метазнакове. |
ГЛОБ_БРАЦЕ | Проширује ликове из групе како би се подударали. |
ГЛОБ_ОНЛИДИР | Враћа списак директорија који се подудара само са узорком. |
ГЛОБ_ЕРР | Користи се за заустављање када дође до грешке. |
Пример 1: Прочитајте све ПХП датотеке користећи симбол '*'
Следећи пример показује начин претраживања свих ПХП датотека на тренутној локацији помоћу '*.пхп 'образац. Направите ПХП датотеку помоћу следеће скрипте.
Узорак ће претраживати било које име датотеке са екстензијом ПХП. Повратна вредност функције је низ који ће се исписати као излаз.
// Штампање листе текстуалних датотека тренутног директоријумапринт_р (глоб ("*.пхп "));
?>
Излаз:
Следећи излаз ће се појавити након покретања скрипте са сервера. То показује да на тренутној локацији постоји пет ПХП датотека.
Пример 2: Прочитајте одређене текстуалне датотеке користећи '?'симбол
Следећи пример ће претражити све текстуалне датотеке које садрже име датотеке од пет знакова. Направите ПХП датотеку помоћу следеће скрипте.
Тхе '?????.ткт ' образац се користи за претрагу текстуалне датотеке са именом датотеке од пет знакова. Излаз функције глоб () је низ који се чува у променљивој, $ филес. Вредности ове променљиве се штампају помоћу фореацх петља.
// Прочитајте одређена имена текстуалних датотека са тренутне локације$ филес = глоб ("?????.ткт ");
// Испис имена датотека
фореацх ($ датотеке као $ датотека)
одјек "" . $ филе. "
";
?>
Излаз:
Следећи излаз ће се појавити након покретања скрипте са сервера. То показује да на тренутном месту постоје две текстуалне датотеке према обрасцу.
Пример 3: Прочитајте све датотеке са тренутне локације помоћу петље
Следећи пример ће претражити све врсте датотека са тренутне локације и исписати имена датотека у сваком реду помоћу петље. '*.* ' образац се користи у функцији глоб () за претрагу било које датотеке било ког типа. Враћена вредност функције чува се у низу, $ филес. Затим се укупан број датотека рачуна из резултата претраживања. за сваки петља се користи за испис вредности низа у сваком реду.
// Прочитајте сва имена датотека са тренутне локације$ филес = глоб ("*.* ");
// Броји укупан број датотека
$ цоунт = цоунт ($ филес);
ецхо "Укупно датотека = $ цоунт
";
ецхо "Датотеке су:
";
// Испис имена датотека
фореацх ($ датотеке као $ датотека)
одјек "" . $ филе. "
";
?>
Излаз:
Следећи излаз ће се појавити након покретања скрипте са сервера. То показује да на тренутној локацији постоји шест датотека.
Пример 4: Претрага датотеке која почиње са одређеним знаком
Следећи пример ће претражити ПХП датотеку која започиње словом 'г'. Направите ПХП датотеку помоћу следеће скрипте.
'г *.пхп ' користи се као образац за претрагу датотека. Као и претходни примери, враћена вредност функције глоб () чува се у низу који се касније штампа помоћу фореацх петља.
// Претрага датотеке почиње са 'г'$ филес = глоб ("г *.пхп ");
// Штампање датотека
фореацх ($ датотеке као $ датотека)
ецхо $ филе. "
";
?>
Излаз:
Следећи излаз ће се појавити након покретања скрипте са сервера. То показује да постоје четири ПХП датотеке на тренутној локацији где датотеке почињу са знаком 'г'.
Пример 5: Прочитајте све датотеке и фасцикле
Узорак коришћен у свим претходним примерима претраживао је само датотеке са тренутне локације. Следећи пример показује начин претраживања свих датотека и директоријума на тренутној локацији. Направите ПХП датотеку помоћу следеће скрипте.
'*' се користи као образац у функцији глоб () за претрагу свих датотека и директоријума. Враћене вредности функције чувају се у низу који се касније штампа.
// Прочитајте све датотеке и фасцикле на тренутној локацији$ датотеке = глоб ("*");
// Штампање датотека и директоријума
фореацх ($ датотеке као $ датотека)
ецхо $ филе. "
";
?>
Излаз:
Следећи излаз ће се појавити након покретања скрипте са сервера. То показује да на тренутној локацији постоји пет ПХП датотека, три текстуалне датотеке и две фасцикле.
Закључак
Методе претраживања било које датотеке или директоријума приказане су у овом упутству помоћу функције глоб () ПХП-а. Датотека се може претраживати на основу наставка, почетног знака или одређивањем укупног броја знакова. Надамо се да ће употреба функције глоб () у ПХП-у бити јаснија и лакша за читаоце након увежбања примера овог водича.