Funksjonen glob

Funksjonen glob søker etter filer og kataloger som samsvarer med et gitt mønster. Den første parameteren er en streng med søkemønsteret. Den andre valgfrie parameteren angir flagg for å endre funksjonens oppførsel.

Syntaks

phpglob(pattern, [flags]);

Flagg

Flagg Beskrivelse
GLOB_MARK Legger til en skråstrek / til hver returnert katalog.
GLOB_NOSORT Returnerer filer i den rekkefølgen de er funnet i katalogen (uten sortering).
GLOB_NOCHECK Returnerer søkemønsteret hvis ingen treff ble funnet.
GLOB_NOESCAPE Backslash unngår ikke metategn.
GLOB_BRACE Utvider {a,b,c} for søk etter flere mønstre.
GLOB_ONLYDIR Returnerer bare kataloger som samsvarer med mønsteret.
GLOB_ERR Stopp ved lesefeil (f.eks. ingen tilgangsrettigheter).

Eksempel

La oss finne alle filer med filendelse .txt i gjeldende katalog:

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

Resultat av kjøring av kode:

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

Eksempel

La oss finne alle filer som starter med 'test' med hvilken som helst filendelse:

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

Resultat av kjøring av kode:

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

Eksempel

Bruk av flagg GLOB_BRACE for søk etter flere mønstre:

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

Resultat av kjøring av kode:

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

Eksempel

Søk etter filer i underkataloger med bruk av flagg GLOB_RECURSE:

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

Resultat av kjøring av kode:

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

Se også

  • funksjonen scandir,
    som leser innholdet i en katalog
  • funksjonen file_exists,
    som sjekker om en fil eksisterer
  • funksjonen is_file,
    som sjekker en fil