PHP实现递归删除目录的通用方法

清华大佬耗费三个月吐血整理的几百G的资源,免费分享!....>>>

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
/**
 *
 +--------------------------------------------------------------------
 * Description 递归删除目录
 +--------------------------------------------------------------------
 * @param  string $dir 需要删除的目录
 +--------------------------------------------------------------------
 * @return 若目录不存在或册除成功则返回为TRUE
 +--------------------------------------------------------------------
 * @author gongwen
 +--------------------------------------------------------------------
 */
function rmdirs($dir){
    if (!is_dir($dir) || rmdir($dir)) return TRUE;
    if($dir_handle=opendir($dir)){
        while($filename=readdir($dir_handle)){
            if($filename!='.' && $filename!='..'){
                $subFile=$dir.'/'.$filename;
            }
            is_dir($subFile)?rmdirs($subFile):unlink($subFile);
        }
        closedir($dir_handle);
        return rmdir($dir);
    }
}