Maison > développement back-end > tutoriel php > Comment puis-je supprimer de manière récursive un répertoire et son contenu en PHP ?

Comment puis-je supprimer de manière récursive un répertoire et son contenu en PHP ?

Linda Hamilton
Libérer: 2024-12-07 00:01:10
original
896 Les gens l'ont consulté

How Can I Recursively Delete a Directory and Its Contents in PHP?

Suppression de répertoire avec traversée récursive en PHP

Problème :

Comment pouvons-nous supprimer efficacement un répertoire et l'intégralité de son contenu , y compris tous les sous-répertoires et fichiers associés, en utilisant PHP ?

Réponse :

Pour résoudre cette tâche récursive de suppression de répertoire, nous utilisons une méthode fournie par l'utilisateur à partir de la page de manuel rmdir :

function rrmdir($dir) {
    // Verify if the specified path is a valid directory
    if (is_dir($dir)) {
        // Retrieve a list of files and subdirectories within the directory
        $objects = scandir($dir);

        // Iterate through each item in the directory
        foreach ($objects as $object) {
            // Exclude hidden files and directories (dot files)
            if ($object !== "." && $object !== "..") {
                // If the item is a directory, recursively delete it
                if (is_dir($dir . DIRECTORY_SEPARATOR . $object) && !is_link($dir . "/" . $object)) {
                    rrmdir($dir . DIRECTORY_SEPARATOR . $object);
                } else {
                    // Delete the item if it's a file
                    unlink($dir . DIRECTORY_SEPARATOR . $object);
                }
            }
        }

        // Once all items within the directory have been removed, remove the directory itself
        rmdir($dir);
    }
}
Copier après la connexion

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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal