Glob funksiyası

glob funksiyası verilmiş şablona uyğun gələn fayl və qovluqları axtarır. Birinci parametrə axtarış şablonu olan sətir ötürülür. İkinci isteğe bağlı parametr funksiyanın davranışını dəyişdirmək üçün bayraqları təyin edir.

Sintaksis

phpglob(pattern, [flags]);

Bayraqlar

Bayraq Təsvir
GLOB_MARK Qaytarılan hər bir qovluğa çəp / əlavə edir.
GLOB_NOSORT Faylları qovluqda olduğu qaydada qaytarır (çeşidləmə olmadan).
GLOB_NOCHECK Heç bir uyğunluq tapılmasa, axtarış şablonunu qaytarır.
GLOB_NOESCAPE Ters çəp simvolları ekranlamır.
GLOB_BRACE Bir neçə şablona görə axtarış üçün {a,b,c} işarəsini genişləndirir.
GLOB_ONLYDIR Şablona uyğun gələn yalnız qovluqları qaytarır.
GLOB_ERR Oxu xətalarında dayanır (məsələn, giriş hüququ yoxdur).

Nümunə

Cari qovluqda .txt genişlənməsinə malik bütün faylları tapaq:

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

Kodun icra nəticəsi:

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

Nümunə

'test' ilə başlayan və hər hansı genişlənməsi olan bütün faylları tapaq:

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

Kodun icra nəticəsi:

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

Nümunə

Bir neçə şablona görə axtarış üçün GLOB_BRACE bayrağının istifadəsi:

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

Kodun icra nəticəsi:

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

Nümunə

GLOB_RECURSE bayrağından istifadə edərək alt qovluqlardakı faylların axtarışı:

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

Kodun icra nəticəsi:

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

Həmçinin baxın

  • scandir funksiyasına,
    bu funksiya qovluğun məzmununu oxuyur
  • file_exists funksiyasına,
    bu funksiya faylın mövcud olub-olmadığını yoxlayır
  • is_file funksiyasına,
    bu funksiya faylı yoxlayır