Functie glob
De functie glob zoekt naar bestanden en mappen die overeenkomen met het opgegeven patroon.
Aan de eerste parameter wordt een string met het zoekpatroon doorgegeven.
De tweede optionele parameter specificeert flags om het gedrag van de functie aan te passen.
Syntaxis
glob(pattern, [flags]);
Flags
| Flag | Beschrijving |
|---|---|
GLOB_MARK |
Voegt een slash / toe aan elke geretourneerde map. |
GLOB_NOSORT |
Retourneert bestanden in de volgorde waarin ze zich in de map bevinden (zonder sortering). |
GLOB_NOCHECK |
Retourneert het zoekpatroon als er geen enkele overeenkomst is gevonden. |
GLOB_NOESCAPE |
Backslashes escapen metatekens niet. |
GLOB_BRACE |
Vouwt {a,b,c} uit om op meerdere patronen te zoeken. |
GLOB_ONLYDIR |
Retourneert alleen mappen die overeenkomen met het patroon. |
GLOB_ERR |
Stoppen bij leesfouten (bijvoorbeeld geen toegangsrechten). |
Voorbeeld
Laten we alle bestanden met de extensie .txt in de huidige map zoeken:
<?php
$res = glob('*.txt');
print_r($res);
?>
Resultaat van de code-uitvoering:
['file1.txt', 'file2.txt', 'notes.txt']
Voorbeeld
Laten we alle bestanden zoeken die beginnen met 'test' met elke extensie:
<?php
$res = glob('test*');
print_r($res);
?>
Resultaat van de code-uitvoering:
['test.php', 'test.txt', 'test_image.jpg']
Voorbeeld
Gebruik van de flag GLOB_BRACE om op meerdere patronen te zoeken:
<?php
$res = glob('*.{php,txt}', GLOB_BRACE);
print_r($res);
?>
Resultaat van de code-uitvoering:
['index.php', 'config.php', 'readme.txt']
Voorbeeld
Zoeken naar bestanden in submappen met gebruik van de flag GLOB_RECURSE:
<?php
$res = glob('**/*.php', GLOB_BRACE|GLOB_RECURSE);
print_r($res);
?>
Resultaat van de code-uitvoering:
['index.php', 'lib/utils.php', 'admin/index.php']
Zie ook
-
de functie
scandir,
die de inhoud van een map leest -
de functie
file_exists,
die het bestaan van een bestand controleert -
de functie
is_file,
die een bestand controleert