用PHP实现递归删除整个文件夹。如果有什么不对的,请大家指教。
/*
**遍历删除文件夹
**@param $dir 要删除文件夹的文件夹
*/
public function del_Dir($dir){
$flag = $this->is_empty_dir($dir);
if( $flag==false ){
$dp = opendir($dir);
while(false !== $file = readdir($dp)){
if($file != "." && $file != ".." ){
if( is_dir("$dir/$file") ){
$this -> del_Dir("$dir/$file");
}else{
unlink("$dir/$file");
}
}
}
closedir($dp);
rmdir($dir);
}else{
rmdir($dir);
}
}
/*
**判断文件夹是否为空
**@param 要判断的文件夹
*/
public function is_empty_dir($dir){
$flag = true;
if( is_dir($dir) ){
$dp = opendir($dir);
while(false !== $file = readdir($dp)){
if($file != "." && $file != ".."){
$flag = false;
}
}
return $flag;
}else{
echo "Not Dir";
}
}