glob ֆունկցիա

glob ֆունկցիան որոնում է ֆայլեր և դիրեկտորիաներ, որոնք համապատասխանում են տրված կաղապարին: Առաջին պարամետրին փոխանցվում է տող որոնման կաղապարով: Երկրորդ ոչ պարտադիր պարամետրը սահմանում է ֆլագներ ֆունկցիայի վարքը փոխելու համար:

Շարահյուսություն

phpglob(pattern, [flags]);

Ֆլագներ

Ֆլագ Նկարագրություն
GLOB_MARK Ավելացնում է շեղ / յուրաքանչյուր վերադարձվող դիրեկտորիային:
GLOB_NOSORT Վերադարձնում է ֆայլերը այն հերթականությամբ, որով դրանք գտնվում են դիրեկտորիայում (առանց տեսակավորման):
GLOB_NOCHECK Վերադարձնում է որոնման կաղապարը, եթե չի գտնվել որևէ համընկնում:
GLOB_NOESCAPE Հակադարձ շեղները չեն էկրանավորում մետասիմվոլները:
GLOB_BRACE Ընդլայնում է {a,b,c}-ը մի քանի կաղապարներով որոնման համար:
GLOB_ONLYDIR Վերադարձնում է միայն կաղապարին համապատասխանող դիրեկտորիաները:
GLOB_ERR Կանգնեցնել ընթերցման սխալների դեպքում (օրինակ, մուտքի իրավունք չկա):

Օրինակ

Գտնենք բոլոր ֆայլերը .txt ընդլայնմամբ ընթացիկ դիրեկտորիայում:

php<?php
  $res = glob('*.txt');
  print_r($res);
?>

Կոդի կատարման արդյունք:

php['file1.txt', 'file2.txt', 'notes.txt']

Օրինակ

Գտնենք բոլոր ֆայլերը, որոնք սկսվում են 'test'-ով ցանկացած ընդլայնմամբ.

php<?php
  $res = glob('test*');
  print_r($res);
?>

Կոդի կատարման արդյունք.

php['test.php', 'test.txt', 'test_image.jpg']

Օրինակ

GLOB_BRACE ֆլագի օգտագործումը մի քանի կաղապարներով որոնման համար.

php<?php
  $res = glob('*.{php,txt}', GLOB_BRACE);
  print_r($res);
?>

Կոդի կատարման արդյունք.

php['index.php', 'config.php', 'readme.txt']

Օրինակ

Ֆայլերի որոնում ենթադիրեկտորիաներում GLOB_RECURSE ֆլագի օգտագործմամբ.

php<?php
  $res = glob('**/*.php', GLOB_BRACE|GLOB_RECURSE);
  print_r($res);
?>

Կոդի կատարման արդյունք.

php['index.php', 'lib/utils.php', 'admin/index.php']

Տես նաև

  • scandir ֆունկցիան,
    որը կարդում է դիրեկտորիայի պարունակությունը
  • file_exists ֆունկցիան,
    որը ստուգում է ֆայլի գոյությունը
  • is_file ֆունկցիան,
    որը ստուգում է ֆայլը