PHP ile içi dolu klasör silme fonksiyonu

PHP ile sunucu üzerinde bir klasör silmek isterseniz rmdir() fonksiyonunu kullanabilirsiniz ama klasörün içinde dosyalar varsa bu fonksiyon işinizi görmeyecektir. Öncesinde klasörün içindeki dosyaları silip sonra rmdir() fonksiyonu ile klasörü silebilirsiniz.

Bu işlemi kolaylaştıran bir fonksiyon paylaşmak istiyorum.

Kullanımı çok basit. Silmek istediğiniz klasörün yolunu yazmanız yeterli…

Örn : klasorsil(“images/eski_urunler”);

function klasorsil($klasor){
if (substr($klasor, strlen($klasor)−1, 1)!= '/')
$klasor .= '/';
if ($handle = opendir($klasor)) {
while ($obj = readdir($handle)) {
if ($obj!= '.' && $obj!= '..') {
if (is_dir($klasor.$obj)) {
if (!klasorsil($klasor.$obj))
return false;
}elseif (is_file($klasor.$obj)) {
if (!unlink($klasor.$obj))
return false;
}
}
}
closedir($handle);
if (!@rmdir($klasor))
return false;
return true;
}
return false;
}  

Bir Cevap Yazın

This site uses Akismet to reduce spam. Learn how your comment data is processed.