PHP ile Klasör Silme ve Dosya Silme Fonksiyonu
Şimdi Vereceğim kod ile sitenizin sunucusunda izinler vs gibi dolayı silinemeyen dosya/klasörleri silebilirsiniz, dosya kodu aslında çok basit, fakat içi dolu klasörü silme fonksiyonu için php.net e bakmam gerekliydi,
şimdi kodlara gelelim:
Silinmeyen dosyalar için şöyle bir kod işinizi görecektir.
1 2 3 4 |
<?php $dosyaadi="dosyanin_adi"; echo unlink($dosyaadi)?"dosyayı silmek başarılı":"dosyayı silmek başarısız"; ?> |
aslında bir dizi yaratıp dizinin her bir elemanı için bu işlemi foreach ile tekrarlatabilirsiniz, işiniz kolaylaşacaktor
klasör silmesine gelelim. burada ayrı bir fonksiyon yazıyoruz (php.net sağolsun )
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
<?php function KlasorSil($dir) { if (substr($dir, strlen($dir)-1, 1)!= '/') $dir .= '/'; //echo $dir; //silinen klasörün adı if ($handle = opendir($dir)) { while ($obj = readdir($handle)) { if ($obj!= '.' && $obj!= '..') { if (is_dir($dir.$obj)) { if (!KlasorSil($dir.$obj)) return false; } elseif (is_file($dir.$obj)) { if (!unlink($dir.$obj)) return false; } } } closedir($handle); if (!@rmdir($dir)) return false; return true; } return false; } $silinecekklasor="klasor";//silinecek klasörün adı echo KlasorSil($silinecekklasor)?"oldu":"olmadı"; ?> |
bu fonksiyonun güzelliği, rmdir() den öte, içerisi dolu olsa bile silebilmesi, içerisinde alt klasör ve dosya olsa bile yaratılma izinleri php den olduğu sürece silinecektir
afiyet olsun
Cpanel’den silemediğim klasör ve dosyalar vardı.
Hepsini temizledim. Allah razı olsun !