Contoh untuk menerangkan cara memadam folder dengan php

PHPz
Lepaskan: 2023-04-04 20:20:02
asal
590 orang telah melayarinya

Untuk memadam folder dalam PHP, biasanya gunakan pemadaman rekursif, berikut adalah langkah khusus:

  1. Buka folder dan imbas subdirektori : gunakan opendir() Buka folder dan imbas fail/folder menggunakan kaedah readdir(). Semasa mengimbas, semak sama ada setiap subdirektori ialah folder atau fail dan simpan laluan ke berbilang peringkat subdirektori dalam tatasusunan.

    function deleteFolder($folderPath) {
        if (!is_dir($folderPath)) return false; // 确认路径是一个目录
        $folderIterator = new RecursiveDirectoryIterator($folderPath, RecursiveDirectoryIterator::SKIP_DOTS);
        $iterator = new RecursiveIteratorIterator($folderIterator, RecursiveIteratorIterator::CHILD_FIRST);
        foreach ($iterator as $file) {
            if ($file->isDir()){
                rmdir($file->getRealPath());
            }else{
                unlink($file->getRealPath());
            }
        }
        rmdir($folderPath);
        return true;
    }
    Salin selepas log masuk
    Salin selepas log masuk
  2. Padam semua fail dan folder secara rekursif: Dalam langkah 1, berbilang peringkat laluan subdirektori disimpan. Sekarang, ulangi tatasusunan dalam susunan terbalik, kerana pemadaman subfolder folder mesti dilakukan terlebih dahulu.
  3. Padamkan Folder Akar: Akhirnya, hanya padamkan folder akar menggunakan fungsi rmdir().

Kod penuh:

function deleteFolder($folderPath) {
    if (!is_dir($folderPath)) return false; // 确认路径是一个目录
    $folderIterator = new RecursiveDirectoryIterator($folderPath, RecursiveDirectoryIterator::SKIP_DOTS);
    $iterator = new RecursiveIteratorIterator($folderIterator, RecursiveIteratorIterator::CHILD_FIRST);
    foreach ($iterator as $file) {
        if ($file->isDir()){
            rmdir($file->getRealPath());
        }else{
            unlink($file->getRealPath());
        }
    }
    rmdir($folderPath);
    return true;
}
Salin selepas log masuk
Salin selepas log masuk

Contoh penggunaan:

$folderPath = "path/to/your/folder/";
deleteFolder($folderPath);
echo "文件夹删除成功!";
Salin selepas log masuk

Nota: Kod ini akan memadam terus folder dan semua kandungannya tanpa meneruskan Prompt for pengesahan terlebih dahulu. Oleh itu, pastikan anda telah membuat sandaran semua dalam folder ini sebelum menggunakannya.

Atas ialah kandungan terperinci Contoh untuk menerangkan cara memadam folder dengan php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan