Maison > développement back-end > Problème PHP > Comment supprimer des répertoires de manière récursive en php

Comment supprimer des répertoires de manière récursive en php

藏色散人
Libérer: 2023-03-03 15:28:01
original
2731 Les gens l'ont consulté

Comment supprimer récursivement un répertoire en php : créez d'abord un exemple de fichier PHP ; puis obtenez le chemin du fichier via la méthode "DATA_DIR .'/compiled/';" puis listez les fichiers et répertoires ; et enfin utiliser la méthode récursive pour supprimer le répertoire suffit.

Comment supprimer des répertoires de manière récursive en php

Recommandé : "Tutoriel vidéo PHP"

php supprimer récursivement les répertoires

Tout d'abord, vous devez savoir ce qu'est la récursivité, afin qu'il soit facile de lire et d'écrire du code récursif plus tard

Le code récursif répertorié ci-dessous consiste à supprimer le répertoire de fichiers. Vous pouvez apporter de légères modifications pour afficher le fichier. Et le code du répertoire

est le suivant :

public function clear(){
    $compile  = DATA_DIR .'/compiled/';  //指文件所在路径
    _rmdir($compile,1);
 }
// 列出文件和目录
function _scandir($dir) {
    if(function_exists('scandir')) return scandir($dir);   // 有些服务器禁用了scandir
    $dh = opendir($dir);
    $arr = array();
    while($file = readdir($dh)) {
        if($file == '.' || $file == '..') continue;
        $arr[] = $file;
    }
    closedir($dh);
    return $arr;
}
// 递归删除目录
function _rmdir($dir, $keepdir = 0) {
    if(!is_dir($dir) || $dir == '/' || $dir == '../') return FALSE;    // 避免意外删除整站数据
    $files = _scandir($dir);
    foreach($files as $file) {
        if($file == '.' || $file == '..') continue;
        $filepath = $dir.'/'.$file;
        if(!is_dir($filepath)) {
            try{unlink($filepath);}catch(Exception $e){}
        }else{
            _rmdir($filepath);
        }
    }
    if(!$keepdir) try{rmdir($dir);}catch(Exception $e){}
    return TRUE;
}
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!

Étiquettes associées:
source:php.cn
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 numéros
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal