Kazi ya glob
Kazi glob hutafuta faili na saraka zinazolingana na kiolezo fulani.
Kigezo cha kwanza hupeanwa mfuatano wa herufi wenye kiolezo cha utafutaji.
Kigezo cha pili si cha lazima huweka bendera za kubadilisha tabia ya kazi.
Syntaxi
glob(pattern, [flags]);
Bendera
| Bendera | Maelezo |
|---|---|
GLOB_MARK |
Huongeza kistari wa kuteuza mshale / kwa kila saraka iliyorudishwa. |
GLOB_NOSORT |
Hurudisha faili kwa mpangilio ambao upo kwenye saraka (bila kupangwa). |
GLOB_NOCHECK |
Hurudisha kiolezo cha utafutaji, ikiwa hakuna linganisho lolote lililopatikana. |
GLOB_NOESCAPE |
Vistari vya nyuma havikingi herufi-meta. |
GLOB_BRACE |
Hufungua {a,b,c} kwa ajili ya kutafuta kwa kutumia violezo mbalimbali. |
GLOB_ONLYDIR |
Hurudisha saraka pekee zinazolingana na kiolezo. |
GLOB_ERR |
Kusimamisha wakati wa makosa ya kusoma (kwa mfano, haki ya kufikia hazipo). |
Mfano
Wacha tupate faili zote zilizo na kiambishi .txt kwenye saraka ya sasa:
<?php
$res = glob('*.txt');
print_r($res);
?>
Matokeo ya kutekeleza kificho:
['file1.txt', 'file2.txt', 'notes.txt']
Mfano
Wacha tupate faili zote zinazoanza kwa 'test' na kiambishi chochote:
<?php
$res = glob('test*');
print_r($res);
?>
Matokeo ya kutekeleza kificho:
['test.php', 'test.txt', 'test_image.jpg']
Mfano
Matumizi ya bendera GLOB_BRACE kwa ajili ya kutafuta kwa kutumia violezo mbalimbali:
<?php
$res = glob('*.{php,txt}', GLOB_BRACE);
print_r($res);
?>
Matokeo ya kutekeleza kificho:
['index.php', 'config.php', 'readme.txt']
Mfano
Kutafuta faili kwenye visaraka vidogo kwa kutumia bendera GLOB_RECURSE:
<?php
$res = glob('**/*.php', GLOB_BRACE|GLOB_RECURSE);
print_r($res);
?>
Matokeo ya kutekeleza kificho:
['index.php', 'lib/utils.php', 'admin/index.php']
Angalia pia
-
kazi
scandir,
ambayo husoma yaliyomo kwenye saraka -
kazi
file_exists,
ambayo inathibitisha kuwepo kwa faili -
kazi
is_file,
ambayo inakagua faili