Maison développement back-end Problème PHP Exemple pour expliquer comment supprimer un dossier avec php

Exemple pour expliquer comment supprimer un dossier avec php

Apr 04, 2023 pm 02:29 PM

Pour supprimer un dossier en PHP, utilisez généralement la suppression récursive, voici les étapes spécifiques :

  1. Ouvrez le dossier et analysez les sous-répertoires  : Utilisez opendir() pour ouvrir le dossier et utilisez readdir() analyse les fichiers/dossiers. Pendant l'analyse, vérifiez si chaque sous-répertoire est un dossier ou un fichier et stockez les chemins d'accès à plusieurs niveaux de sous-répertoires dans un tableau. opendir()打开文件夹并使用readdir()方法扫描文件/文件夹。在扫描的同时检查每个子目录是一个文件夹还是文件,并将多层子目录的路径存储在数组中。

    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;
    }
    Copier après la connexion
    Copier après la connexion
  2. 递归删除所有文件和文件夹:在步骤1中,存储了多个层次的子目录路径。现在,对该数组进行逆序迭代,因为删除文件夹的子文件夹必须先执行。
  3. 删除根文件夹:最终,只需使用rmdir()
    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;
    }
    Copier après la connexion
    Copier après la connexion

Supprimer de manière récursive tous les fichiers et dossiers

 : à l'étape 1, plusieurs niveaux de chemins de sous-répertoires sont stockés. Maintenant, parcourez le tableau dans l'ordre inverse, car la suppression des sous-dossiers d'un dossier doit être effectuée en premier.

Supprimer le dossier racine

 : Enfin, utilisez simplement la fonction rmdir() pour supprimer le dossier racine. 🎜🎜🎜Code complet : 🎜
$folderPath = "path/to/your/folder/";
deleteFolder($folderPath);
echo "文件夹删除成功!";
Copier après la connexion
🎜Exemple d'utilisation : 🎜rrreee🎜Remarque : ce code supprimera directement le dossier et tout son contenu sans demander de confirmation. Par conséquent, assurez-vous d'avoir sauvegardé tout ce qui se trouve dans ce dossier avant de l'utiliser. 🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Tutoriel Java
1663
14
Tutoriel PHP
1264
29
Tutoriel C#
1237
24