Funktsioon glob

Funktsioon glob otsib faile ja katalooge, mis vastavad etteantud mustrile. Esimesse parameetrisse edastatakse string otsingumustriga. Teine valikuline parameeter määrab funktsiooni käitumist muutvad lipud.

Süntaks

phpglob(pattern, [flags]);

Lipud

Lipp Kirjeldus
GLOB_MARK Lisab kaldkriipsu / igale tagastatavale kataloogile.
GLOB_NOSORT Tagastab failid selles järjekorras, milles nad asuvad kataloogis (sorteerimata).
GLOB_NOCHECK Tagastab otsingumustri, kui ühtegi vastet ei leita.
GLOB_NOESCAPE Kurakaldkriipsud ei ekraani metasümboleid.
GLOB_BRACE Laiendab {a,b,c} mitme mustri järgi otsimiseks.
GLOB_ONLYDIR Tagastab ainult mustrile vastavad kataloogid.
GLOB_ERR Peatub vigade korral lugemisel (näiteks puudub juurdepääsuõigus).

Näide

Leiame kõik failid laiendiga .txt praeguses kataloogis:

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

Koodi täitmise tulemus:

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

Näide

Leiame kõik failid, mis algavad sõnega 'test' suvalise laiendiga:

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

Koodi täitmise tulemus:

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

Näide

Lippu GLOB_BRACE kasutamine mitme mustri järgi otsimiseks:

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

Koodi täitmise tulemus:

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

Näide

Failide otsimine alamkataloogides lipu GLOB_RECURSE kasutamisega:

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

Koodi täitmise tulemus:

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

Vaata ka

  • funktsiooni scandir,
    mis loeb kataloogi sisu
  • funktsiooni file_exists,
    mis kontrollib faili olemasolu
  • funktsiooni is_file,
    mis kontrollib faili