Funktsiya glob
Funktsiya glob fayl va kataloglarni berilgan andoza bo‘yicha qidiradi.
Birinchi parametrda qidiruv andozasi bilan satr uzatiladi.
Ikkinchi ixtiyoriy parametr funksiya xatti-harakatini o‘zgartirish uchun flaglarni belgilaydi.
Sintaksis
glob(pattern, [flags]);
Flaglar
| Flag | Ta'rif |
|---|---|
GLOB_MARK |
Har bir qaytarilgan katalogga chiziqcha / qo‘shadi. |
GLOB_NOSORT |
Fayllarni katalogda joylashgan tartibda qaytaradi (saralashsiz). |
GLOB_NOCHECK |
Hech qanday moslik topilmasa, qidiruv andozasini qaytaradi. |
GLOB_NOESCAPE |
Teskari chiziqchalar metasimvollarni ekranlamaydi. |
GLOB_BRACE |
Bir nechta andozalar bo‘yicha qidirish uchun {a,b,c} ni yozadi. |
GLOB_ONLYDIR |
Faqat andozaga mos keladigan kataloglarni qaytaradi. |
GLOB_ERR |
O‘qish xatolarida to‘xtatadi (masalan, ruxsat yo‘q). |
Misol
Joriy katalogda .txt kengaytmasi bo‘lgan barcha fayllarni topamiz:
<?php
$res = glob('*.txt');
print_r($res);
?>
Kodni bajarish natijasi:
['file1.txt', 'file2.txt', 'notes.txt']
Misol
'test' dan boshlanadigan va har qanday kengaytmaga ega bo‘lgan barcha fayllarni topamiz:
<?php
$res = glob('test*');
print_r($res);
?>
Kodni bajarish natijasi:
['test.php', 'test.txt', 'test_image.jpg']
Misol
Bir nechta andozalar bo‘yicha qidirish uchun GLOB_BRACE flagidan foydalanish:
<?php
$res = glob('*.{php,txt}', GLOB_BRACE);
print_r($res);
?>
Kodni bajarish natijasi:
['index.php', 'config.php', 'readme.txt']
Misol
GLOB_RECURSE flagidan foydalangan holda ost-kataloglardagi fayllarni qidirish:
<?php
$res = glob('**/*.php', GLOB_BRACE|GLOB_RECURSE);
print_r($res);
?>
Kodni bajarish natijasi:
['index.php', 'lib/utils.php', 'admin/index.php']
Shuningdek qarang
-
funktsiyani
scandir,
bu katalog tarkibini o‘qiydi -
funktsiyani
file_exists,
bu fayl mavjudligini tekshiradi -
funktsiyani
is_file,
bu faylni tekshiradi