Menentukan Status Kosong Direktori dalam PHP
Untuk memastikan sama ada direktori tiada fail, pendekatan biasa melibatkan penggunaan fungsi terbina dalam PHP seperti glob atau scandir. Walau bagaimanapun, teknik ini mungkin mengabaikan fail tersembunyi tertentu. Untuk memastikan ketepatan, pertimbangkan untuk menggunakan fungsi is_dir_empty().
Fungsi is_dir_empty()
Fungsi is_dir_empty() menggunakan scandir untuk meneliti kandungan direktori. Jika hanya direktori . (direktori semasa) dan .. (direktori induk) hadir, direktori itu dianggap kosong, mengembalikan True. Jika tidak, ia mengembalikan False, menunjukkan kehadiran fail atau subdirektori lain.
Contoh Pelaksanaan
<code class="php">function is_dir_empty($dir) { return (count(scandir($dir)) == 2); }</code>
Fungsi Alternatif
Sebagai alternatif, kaedah yang lebih cekap menggunakan opendir dan readdir untuk menyemak terus kehadiran fail tanpa membacanya sepenuhnya.
<code class="php">function dir_is_empty($dir) { $handle = opendir($dir); while (false !== ($entry = readdir($handle))) { if ($entry != "." && $entry != "..") { closedir($handle); return false; } } closedir($handle); return true; }</code>
Menggunakan Fungsi dalam Struktur Kawalan
Sekali anda telah mengenal pasti fungsi yang sesuai, anda boleh memanfaatkan outputnya secara langsung dalam struktur kawalan tanpa sebarang pembolehubah perantara. Contohnya:
<code class="php">if (is_dir_empty($dir)) { echo "The folder is empty."; } else { echo "The folder is NOT empty."; }</code>
Atas ialah kandungan terperinci Bagaimana untuk Tentukan dengan Amanah sama ada Direktori Kosong dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!