首页 > 代码库 > PHP之递归删除

PHP之递归删除

 1 <?php
 2 
 3     //递归删除目录
 4     $path = "D:/a";
 5     //调用递归函数
 6     $res = diGUiRmDir($path);
 7     //输出结果
 8     var_dump($res);
 9 
10     function diGUiRmDir($path){
11 
12         //打开目录句柄
13         $handle = opendir($path);
14 
15         //readdir() 从目录句柄中读取条目 
16         //返回目录中下一个文件的文件名。文件名以在文件系统中的排序返回
17         while(false !== $filename = readdir($handle)){
18             if ($filename ==‘.‘ || $filename ==‘..‘) {  //跳过 . ..文件夹
19                 continue;
20             }
21 
22             //判断是否为目录
23             if (is_dir($path.‘/‘.$filename)) {
24                 $current_func = __FUNCTION__;
25                 //是目录,递归删除
26                 $current_func = ($path.‘/‘.$filename);
27             }else{
28                 //是文件,删除
29                 unlink($path.‘/‘.$filename); //unlink() 删除文件 返回bool
30             }
31         }
32         //目录删除完毕
33         closedir($handle); //关闭目录句柄
34         return rmdir($path); // 删除目录返回结果
35     }

 

PHP之递归删除