Apa gunanya glob di php?

Artikel ini telah ada di kartu untuk sementara waktu sekarang dengan artikel terbaru di tempat lain[1][fn1],[2][fn2] mendorong saya untuk menyelesaikannya dan memuatnya di blog. Fokus di sini adalah pada pola wildcard yang dapat digunakan dengan glob

Pengantar fungsi glob

Mengutip deskripsi singkat di [halaman manual PHP] [glob] untuk glob

Fungsi glob mencari semua pola pencocokan nama jalur sesuai dengan aturan yang digunakan oleh fungsi glob libc, yang mirip dengan aturan yang digunakan oleh shell umum

– http. //php. bersih/glob

Apa yang ada dalam pola?

Kebanyakan orang yang telah menemukan glob tahu untuk menggunakan * metakarakter untuk mencocokkan beberapa karakter, dan mereka yang menggali sedikit lebih dalam sering menemukan bahwa alternatif diskrit dapat digabungkan dengan tanda kurung (e. g. image.{gif,jpg,png}). Namun, ada lebih banyak karakter dan urutan khusus yang dapat digunakan untuk lebih (atau kurang, jika kita mau) spesifik tentang apa yang harus ditemukan.

Ke samping. tolong jangan membuat kesalahan dengan berpikir bahwa pola glob adalah ekspresi reguler, itu tidak benar. Jika Anda ingin menggunakan ekspresi reguler untuk menemukan jalur/file maka Anda diundang untuk menggunakan [RegexIterator][regexiterator] SPL, yang memungkinkan pemfilteran Iterator berdasarkan regex PCRE, bersama dengan DirectoryIterator atau FilesystemIterator (ada rekursif . Untuk mereka yang cenderung SPL, perhatikan juga [GlobIterator][globitertor] yang menggabungkan kebaikan globbing dengan iterasi. Jika itu sama sekali tidak masuk akal, silakan baca terus. Gumpalan jauh lebih sedikit bertele-tele

Jadi, inilah doohickeys khusus (istilah teknis. ) yang dapat kita gunakan dengan glob

* (tanda bintang) Cocok dengan nol karakter lainnya. glob0Cocok persis dengan salah satu karakter. glob1Cocok dengan satu karakter dari grup. Grup dapat berupa daftar karakter, mis. g. glob2, atau serangkaian karakter, e. g. glob3 yang sama dengan glob4. glob5Cocok dengan karakter tunggal yang tidak ada dalam grup. glob6 cocok dengan karakter apa pun yang bukan alfanumerik. glob7Melarikan diri dari karakter berikutnya. Untuk karakter khusus, hal ini menyebabkan mereka tidak diperlakukan istimewa. Misalnya, glob8 cocok dengan literal [. Jika bendera menyertakan GLOB_NOESCAPE, kutipan ini dinonaktifkan dan glob7 ditangani sebagai karakter sederhana

Contoh glob yang sangat bagus

Berikut adalah beberapa contoh tampilan gumpalan di samping deskripsi singkat tentang perilaku yang dimaksud. jika Anda memiliki saran, silakan buat di komentar karena saya kekurangan inspirasi

patterndescriptionglob0Dapatkan isi direktori yang memiliki ekstensi. txt (Catatan. file bisa diberi nama sederhana. txt. ). glob1Dapatkan isi direktori dengan nama _persis_ dengan panjang dua karakter. glob2Dapatkan isi direktori dengan nama minimal dua karakter. glob3Dapatkan isi direktori dengan nama minimal dua karakter dan dimulai dengan huruf gglob4Dapatkan isi direktori dengan ekstensi. jpg,. gif atau. png. Ingatlah untuk menggunakan bendera GLOB_BRACE. glob5Dapatkan isi direktori yang dimulai dengan huruf DN, diikuti oleh lima karakter, dengan ekstensi. dat. glob6Dapatkan isi direktori yang dimulai dengan huruf DN, diikuti oleh lima _digits_, dengan ekstensi dari. dat. glob7Mendapatkan isi direktori yang tidak dimulai dengan huruf vokal. glob8Mendapatkan isi direktori yang tidak dimulai dengan a, b, c atau d. glob9Dapatkan isi direktori yang nama dasarnya diakhiri dengan satu digit yang diapit oleh kurung siku. Jika GLOB_NOESCAPE digunakan, satu digit diapit \[ dan \] yang akan menjadi nama yang cukup aneh. glob0Dapatkan konten direktori yang namanya dimulai dengan th_ (dengan setidaknya satu karakter setelah itu) di dalam direktori yang namanya dimulai dengan img di direktori subdirektori

Nah begitulah, saya telah mengatakan apa yang ingin saya katakan di sini sehingga yang masih harus dilakukan adalah memberikan tautan cinta ke dua artikel baru-baru ini yang mendorong saya untuk menghapus draf ini dan mengklik tombol "terbitkan"

Dengan terimakasih

  1. php. [Putting glob() to test][phpa_glob] arsitek berfokus pada waktu eksekusi glob dan teknik lain untuk mendapatkan daftar file
  2. Artikel Marcus Schumann [Loop Through Folders with PHP’s Glob()][nettuts_glob] di Nettuts+ memberikan pengenalan singkat bagi mereka yang mungkin belum mengenal glob

[fn1]. #fn1 “php. arsitek - Menguji glob()”) [fn2]. #fn2 “Nettuts+ - Mengulangi Folder dengan PHP’s Glob()” [glob]. http. //php. net/glob “PHP. Glob” [regexiterator]. http. //php. net/regexiterator “PHP. SPL RegexIterator” [globiterator]. http. //php. net/globiterator “PHP. SPL GlobIterator” [phpa_glob]. http. // www. phparch. com/2010/04/28/putting-glob-to-the-test/ [nettuts_glob]. http. //bersih. tutsplus. com/tutorials/php/quick-tip-loop-through-folders-with-phps-glob/

Apa peran glob?

Fungsi glob() mengembalikan array yang berisi file/direktori yang cocok . Mengembalikan array kosong jika tidak ada file yang cocok dan FALSE karena kesalahan.

Bagaimana cara mendapatkan semua file di glob PHP?

Untuk membaca semua file dalam direktori tertentu menggunakan PHP, kita dapat menggunakan fungsi glob() . Fungsi ini memungkinkan untuk membaca file (pathname) apa pun/ sub direktori/ keduanya dalam direktori tertentu (di mana file sedang dicari).

Apa itu pencarian global?

Dalam pemrograman komputer, pola glob (/ɡlɑːb/) tentukan kumpulan nama file dengan karakter wildcard . Misalnya, perintah shell Unix Bash mv *. txt file teks/ memindahkan ( mv ) semua file dengan nama berakhiran. txt dari direktori saat ini ke direktori textfiles.

Apa itu pola nama file glob?

Pola glob adalah ekspresi teks yang cocok dengan satu atau beberapa nama file menggunakan kartu bebas yang akrab bagi sebagian besar pengguna baris perintah . Misalnya, * adalah gumpalan yang cocok dengan nama apa pun dan Readme. txt adalah gumpalan yang cocok dengan satu file.