Funkcija glob
Funkcija glob meklē failus un direktorijas, kas atbilst norādītajam šablonam.
Pirmajā parametrā tiek padota virkne ar meklēšanas šablonu.
Otrais neobligātais parametrs norāda karogus, lai mainītu funkcijas darbību.
Sintakse
glob(pattern, [flags]);
Karogi
| Karogs | Apraksts |
|---|---|
GLOB_MARK |
Pievieno slīpsvītru / katrai atgrieztajai direktorijai. |
GLOB_NOSORT |
Atgriež failus tādā secībā, kādā tie atrodas direktorijā (bez kārtošanas). |
GLOB_NOCHECK |
Atgriež meklēšanas šablonu, ja netika atrasts neviens atbilstības gadījums. |
GLOB_NOESCAPE |
Reversās slīpsvītras neekranē metazīmes. |
GLOB_BRACE |
Izvērš {a,b,c}, lai meklētu pēc vairākiem šabloniem. |
GLOB_ONLYDIR |
Atgriež tikai direktorijas, kas atbilst šablonam. |
GLOB_ERR |
Pārtraukt darbību lasīšanas kļūdu gadījumā (piemēram, nav piekļuves tiesību). |
Piemērs
Atradīsim visus failus ar paplašinājumu .txt pašreizējā direktorijā:
<?php
$res = glob('*.txt');
print_r($res);
?>
Koda izpildes rezultāts:
['file1.txt', 'file2.txt', 'notes.txt']
Piemērs
Atradīsim visus failus, kas sākas ar 'test' ar jebkuru paplašinājumu:
<?php
$res = glob('test*');
print_r($res);
?>
Koda izpildes rezultāts:
['test.php', 'test.txt', 'test_image.jpg']
Piemērs
Karoga GLOB_BRACE izmantošana meklēšanai pēc vairākiem šabloniem:
<?php
$res = glob('*.{php,txt}', GLOB_BRACE);
print_r($res);
?>
Koda izpildes rezultāts:
['index.php', 'config.php', 'readme.txt']
Piemērs
Failu meklēšana apakšdirektorijās, izmantojot karogu GLOB_RECURSE:
<?php
$res = glob('**/*.php', GLOB_BRACE|GLOB_RECURSE);
print_r($res);
?>
Koda izpildes rezultāts:
['index.php', 'lib/utils.php', 'admin/index.php']
Skatiet arī
-
funkciju
scandir,
kura nolasa direktorijas saturu -
funkciju
file_exists,
kura pārbauda faila eksistenci -
funkciju
is_file,
kura pārbauda failu