摘自 “linuxer” 博客 http://deidara.blog.51cto.com/400447/118805
要刪除一個空的目錄很簡單~一個
rmdir() 函數就可以搞定,但是要刪除一個非空目錄,將不能進行快速的刪除,必須先將目錄中文件刪除,但是目錄裡可能還會有子目錄所以要進行遞歸刪除~下面是我的例子~
<?php
function deletedir($dir){
if(!handle=@opendir($dir)){ //檢測要打開目錄是否存在
die("沒有該目錄");
}
while(false !==($file=readdir($handle))){
if($file!=="."&&$file!==".."){ //排除當前目錄與父級目錄
$file=$dir .DIRECTORY_SEPARATOR. $file;
if(is_dir($file)){
deletedir($file);
}else{
if(@unlink($file)){
echo "文件<b>$file</b>刪除成功。<br>";
}else{
echo "文件<b>$file</b>刪除失敗!<br>";
}
}
}
if(@rmdir($dir)){
echo "目錄<b>$dir</b>刪除成功了。<br>
";
}else{
echo "目錄<b>$dir</b>刪除失敗!<br>
";
}
}
//測試程序
$dir="/var/www/test";
deletedir($dir);
?>
在 /var/www/test 文件夾下建一寫 文件夾和文件測試
shell> touch aaa
shell> touch bbb
shell> touch ccc
shell> touch eee
shell> touch ffff
shell> mkdir 111
shell> mkdir 222
shell> mkdir 333
分別再在111,222,333 文件夾下建寫文件這裡就不多說了,然後給他們權限
shell>chown [url]www.www[/url] test -R
然後在IE 打開程序測試吧~~呵呵。