PHP删除非空目录
PHP内置的函数有一个rmdir()是用来删除目录的。但是这个函数根据手册:
尝试删除 dirname 所指定的目录。 该目录必须是空的,而且要有相应的权限。如果成功则返回 TRUE,失败则返回 FALSE
因此可以自己写的函数来弥补rmdir的不足,思路很简单:先检查目录下有没有文件或文件夹,如果有,就用递归删除目录下的所有文件和文件夹,然后删除此目录。
代码如下:<?php
function d_rmdir($dirname) {
if(!is_dir($dirname)) {
return false;
}
$handle = @opendir($dirname);
while(($file = @readdir($handle)) !== false){
if($file != '.' && $file != '..'){
$dir = $dirname . '/' . $file;
is_dir($dir) ? d_rmdir($dir) : @unlink($dir);
}
}
closedir($handle);
return rmdir($dirname) ;
}
?>
Hello, thx for all,
虽然不懂PHP,但能看到你的消息还是很高兴。。。。^_^
2008加油。。。。加油2008.。。