SORU
26 Temmuz 2010, PAZARTESİ


Nasıl PHP bir dizini ve onun tüm içeriğini silmek özyinelemeli (dosyalar alt dizin)?

Nasıl bir dizini ve onun tüm içeriğini (alt dizinleri ve dosyaları) silmek PHP muyum?

CEVAP
28 Temmuz 2010, ÇARŞAMBA


The Pixel Developer's comment, bir parçacık SPL kullanarak yapı gibi görünebilir:

$files = new RecursiveIteratorIterator(
    new RecursiveDirectoryIterator($dir, RecursiveDirectoryIterator::SKIP_DOTS),
    RecursiveIteratorIterator::CHILD_FIRST
);

foreach ($files as $fileinfo) {
    $todo = ($fileinfo->isDir() ? 'rmdir' : 'unlink');
    $todo($fileinfo->getRealPath());
}

rmdir($dir);

Not: yokhayırakıl sağlığını kontrol ve SKİP_DOTS bayrağı PHP 5.3.0 içinde Filesystemİterator ile tanıttı kullanır. Tabii ki, $todo if/elsebir olabilir. Önemli nokta CHILD_FIRST ilk üst (klasörler) önce çocuklar (dosyalar) üzerinde yineleme için kullanılır.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • jat4011

    jat4011

    16 EKİM 2010
  • Joseph Herscher

    Joseph Hersc

    14 Mart 2007
  • WiseOwlTutorials

    WiseOwlTutor

    21 EKİM 2011