當前位置:首頁 > PHP教程 > php應用 > 列表

php如何刪除當前目錄及其目錄下的所有文件?(代碼)

發布:smiling 來源: PHP粉絲網  添加日期:2020-01-13 16:15:00 瀏覽: 評論:0 

本篇文章給大家帶來的內容是關于php如何刪除當前目錄及其目錄下的所有文件?(代碼),有一定的參考價值,有需要的朋友可以參考一下,希望對你有所幫助。

使用PHP遍歷一個目錄下的所有目錄及文件,并刪除該目錄及其目錄下的所有子目錄和文件,本次代碼通過遞歸的方式來實現。

用到的函數:

scandir($path) 遍歷一個目錄下所有文件并返回數組。

unlink($filename) 刪除文件。

rmdir($path) 只刪除空文件夾。

PHP代碼:

  1. /** 
  2.  
  3.  * 刪除當前目錄及其目錄下的所有目錄和文件 
  4.  
  5.  * @param string $path 待刪除的目錄 
  6.  
  7.  * @note  $path路徑結尾不要有斜杠/(例如:正確[$path='./static/image'],錯誤[$path='./static/image/']) 
  8.  
  9.  */ 
  10.  
  11. function deleteDir($path) { 
  12.  
  13.  
  14.  
  15.     if (is_dir($path)) { 
  16.  
  17.         //掃描一個目錄內的所有目錄和文件并返回數組 
  18.  
  19.         $dirs = scandir($path); 
  20.  
  21.  
  22.  
  23.         foreach ($dirs as $dir) { 
  24.  
  25.             //排除目錄中的當前目錄(.)和上一級目錄(..) 
  26.  
  27.             if ($dir != '.' && $dir != '..') { 
  28.  
  29.                 //如果是目錄則遞歸子目錄,繼續操作 
  30.  
  31.                 $sonDir = $path.'/'.$dir
  32.  
  33.                 if (is_dir($sonDir)) { 
  34.  
  35.                     //遞歸刪除 
  36.  
  37.                     deleteDir($sonDir); 
  38.  
  39.  
  40.  
  41.                     //目錄內的子目錄和文件刪除后刪除空目錄 
  42.  
  43.                     @rmdir($sonDir); 
  44.  
  45.                 } else { 
  46.  
  47.  
  48.  
  49.                     //如果是文件直接刪除 
  50.  
  51.                     @unlink($sonDir); 
  52.  
  53.                 } 
  54. //phpfensi.com 
  55.             } 
  56.  
  57.         } 
  58.  
  59.         @rmdir($path); 
  60.  
  61.     } 
  62.  

以上就是php如何刪除當前目錄及其目錄下的所有文件?(代碼)的詳細內容

Tags: php刪除目錄文件

分享到:

六合图库图纸印刷网