Misalnya saya punya folder bernama `Temp 'dan saya ingin menghapus atau menyiram semua file dari folder ini menggunakan PHP. Bisakah saya melakukan ini?
Jika Anda ingin menghapus file 'tersembunyi' seperti .htaccess, Anda harus menggunakannya
Jika Anda ingin menghapus semuanya dari folder (termasuk subfolder) gunakan kombinasi
Perbarui Panggilan ini juga dapat menangani direktori kosong - terima kasih atas tipnya, @mojuba!
Berikut adalah pendekatan yang lebih modern menggunakan Standard PHP Library (SPL) .
Kode ini dari http://php.net/unlink :
Lihat readdir dan batalkan tautan .
Dengan asumsi Anda memiliki folder dengan BANYAK file membaca semuanya dan kemudian menghapus dalam dua langkah tidak berkinerja . Saya percaya cara paling berkinerja untuk menghapus file adalah dengan hanya menggunakan perintah sistem. Sebagai contoh di linux saya menggunakan:
Atau ini jika Anda ingin penghapusan rekursif tanpa perlu menulis fungsi rekursif
perintah persis yang sama ada untuk OS apa pun yang didukung oleh PHP .. Ingatlah ini adalah cara PERFORMING menghapus file. $ absolutePathToFolder HARUS diperiksa dan diamankan sebelum menjalankan kode ini dan izin harus diberikan. Solusi lain: Kelas ini menghapus semua file, subdirektori dan file dalam sub direktori.
fungsi unlinkr secara rekursif menghapus semua folder dan file di jalur yang diberikan dengan memastikan tidak menghapus skrip itu sendiri.
jika Anda ingin menghapus semua file dan folder tempat Anda menempatkan skrip ini, panggil sebagai berikut
jika Anda hanya ingin menghapus file php saja, panggil saja sebagai berikut
anda dapat menggunakan jalur lain untuk menghapus file juga
Ini akan menghapus semua file di direktori home/user/temp. Diposting file tujuan umum dan penanganan folder untuk menyalin, memindahkan, menghapus, menghitung ukuran, dll., Yang dapat menangani satu file atau satu set folder. https://Gist.github.com/4689551 Menggunakan: Untuk menyalin (atau memindahkan) satu file atau satu set folder/file:
Hapus satu file atau semua file dan folder di jalur:
Hitung ukuran satu file atau satu set file dalam satu set folder:
Bagi saya, solusi dengan
Ada paket yang disebut "Pusheh". Dengan menggunakannya, Anda dapat menghapus direktori atau menghapus direktori sepenuhnya ( Github link ). Ini tersedia di Pembuat paket , juga. Misalnya, jika Anda ingin menghapus direktori
Jika Anda tertarik, lihat wiki . Saya memperbarui jawaban @Stichoza untuk menghapus file melalui subfolder.
|