A glob függvény

A glob függvény a megadott mintának megfelelő fájlokat és könyvtárakat keresi. Az első paraméterben a keresési minta sztringje adható meg. A második, opcionális paraméter a függvény viselkedését módosító flag-eket határoz meg.

Szintaxis

phpglob(pattern, [flags]);

Flag-ek

Flag Leírás
GLOB_MARK Perjelet / ad minden visszaadott könyvtárhoz.
GLOB_NOSORT A fájlokat a könyvtárban található sorrendben adja vissza (rendezés nélkül).
GLOB_NOCHECK A keresési mintát adja vissza, ha egyetlen egyezés sem található.
GLOB_NOESCAPE A visszaperjelek nem escape-elik a metakaraktereket.
GLOB_BRACE Kiterjeszti az {a,b,c} kifejezéseket több minta szerinti keresésre.
GLOB_ONLYDIR Csak a mintának megfelelő könyvtárakat adja vissza.
GLOB_ERR Leállítja a futtatást olvasási hibák esetén (például nincs jogosultság).

Példa

Keressük meg az összes .txt kiterjesztésű fájlt az aktuális könyvtárban:

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

A kód végrehajtásának eredménye:

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

Példa

Keressük meg az összes, 'test'-vel kezdődő, tetszőleges kiterjesztésű fájlt:

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

A kód végrehajtásának eredménye:

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

Példa

A GLOB_BRACE flag használata több minta szerinti kereséshez:

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

A kód végrehajtásának eredménye:

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

Példa

Fájlok keresése alkönyvtárakban a GLOB_RECURSE flag használatával:

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

A kód végrehajtásának eredménye:

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

Lásd még

  • a scandir függvényt,
    amely egy könyvtár tartalmát olvassa
  • a file_exists függvényt,
    amely egy fájl létezését ellenőrzi
  • a is_file függvényt,
    amely egy fájlt ellenőriz