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

  • BeginnersTech

    BeginnersTec

    8 NİSAN 2011
  • bigky226

    bigky226

    11 HAZİRAN 2006
  • Joshua Benedict

    Joshua Bened

    26 EKİM 2013