程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> php遞歸刪除目錄

php遞歸刪除目錄

編輯:關於PHP編程

摘自 “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 打開程序測試吧~~呵呵。
 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved