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 функциясы,
    файлды текшерет