Cara Membaca Subdirektori dan Mengulangi Fail dalam PHP
Untuk mengulangi fail dalam subdirektori, anda boleh memanfaatkan iterator rekursif PHP.
Recursive Directory Iterator
Kelas RecursiveDirectoryIterator membolehkan anda melintasi struktur direktori secara rekursif. Setiap lelaran mengembalikan objek SplFileInfo baharu yang mewakili fail atau direktori.
Recursive Iterator Iterator
Kelas RecursiveIteratorIterator membungkus RecursiveDirectoryIterator dan menyediakan cara yang mudah untuk melintasi direktori pokok, melawati subdirektori secara rekursif.
Kod Contoh
Berikut ialah coretan kod contoh yang mempamerkan cara menggunakan iterator ini:
<code class="php">$main = "MainDirectory"; $di = new RecursiveDirectoryIterator($main, RecursiveDirectoryIterator::SKIP_DOTS); $rii = new RecursiveIteratorIterator($di); foreach ($rii as $filename => $file) { // Do something with each file echo "$filename - {$file->getSize()} bytes\n"; }</code>
Kod ini memulakan RecursiveDirectoryIterator untuk MainDirectory dan melangkau direktori semasa dan induk (. dan ..). Kemudian, ia mencipta RecursiveIteratorIterator dan melelang ke atas pepohon direktori. Setiap kali ia menemui fail, ia menggemakan nama fail dan saiz fail.
Nota: Anda boleh mengubah suai melakukan sesuatu dengan setiap bahagian fail untuk melaksanakan operasi yang diingini pada setiap fail. Contoh ini hanya mencetak nama fail dan saiz untuk setiap fail.
Atas ialah kandungan terperinci Bagaimana untuk Membaca Subdirektori dan Memproses Fail secara Rekursif dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!