首頁 >後端開發 >php教程 >php如何刪除一個路徑下的所有檔案和資料夾

php如何刪除一個路徑下的所有檔案和資料夾

小云云
小云云原創
2018-05-14 16:22:503618瀏覽

本文主要和大家分享php如何刪除一個路徑下的所有檔案和資料夾,php遍歷一個資料夾內的所有檔案和資料夾,並刪除所有資料夾和子資料夾下的所有檔案的程式碼,通過遞歸方式實現達到清空一個目錄的效果,程式碼簡單又實用。

也適合在thinkphp中清理緩存,在thinkphp中可以把下面程式碼寫入./Application/Admin/Common/function.php檔案中,再在控制器呼叫這個函數進行清理操作。

用到的函數:

 scandir($path)    遍历一个文件夹所有文件并返回数组。
    unlink($filename)    删除文件。
    rmdir($path)    只删除空文件夹
<?php
 //设置需要删除的文件夹
  $path = "./Application/Runtime/";
  //清空文件夹函数和清空文件夹后删除空文件夹函数的处理
  function deldir($path){
   //如果是目录则继续
   if(is_dir($path)){
    //扫描一个文件夹内的所有文件夹和文件并返回数组
   $p = scandir($path);
   foreach($p as $val){
    //排除目录中的.和..
    if($val !="." && $val !=".."){
     //如果是目录则递归子目录,继续操作
     if(is_dir($path.$val)){
      //子目录中操作删除文件夹和文件
      deldir($path.$val.&#39;/&#39;);
      //目录清空后删除空文件夹
      @rmdir($path.$val.&#39;/&#39;);
     }else{
      //如果是文件直接删除
      unlink($path.$val);
     }
    }
   }
  }
  }
 //调用函数,传入路径
 deldir($path);

相關建議:

PHP的unlink與rmdir刪除目錄及目錄下所有檔案方法

#php批次轉換資料夾下所有檔案編碼方法

PHP利用一行程式碼刪除目錄下所有檔案實例詳解

以上是php如何刪除一個路徑下的所有檔案和資料夾的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn