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

php獲取並刪除目錄及目錄下所有的文件實例

編輯:關於PHP編程

今天我們一起來看看在php中獲取目錄及刪除目錄中文件或指定目錄中文件實例,希望此方法對各位朋友會帶來幫助。

用php程序刪除目錄和文件比到ftp刪除有很多優勢。首先進ftp就比較麻煩,然後刪除大量文件的時候ftp刪除很慢,還有就是程序只想刪除文件夾下面的文件,而保留目錄結構,可以用php來輕松的實現,再有比如生成的日志、緩存要清除用程序來完成顯然輕松的多。

listFiles

第一步,PHP獲取目錄下面所有文件和文件夾

 

 代碼如下 復制代碼

<?php

 $dir = "D:/";  //要獲取的目錄

 echo "********** 獲取目錄下所有文件和文件夾 ***********<hr/>";

 //先判斷指定的路徑是不是一個文件夾

 if (is_dir($dir)){

  if ($dh = opendir($dir)){

   while (($file = readdir($dh))!= false){

    //文件名的全路徑 包含文件名

    $filePath = $dir.$file;

    //獲取文件修改時間

    $fmt = filemtime($filePath);

    echo "<span style='color:#666'>(".date("Y-m-d H:i:s",$fmt).")</span> ".$filePath."<br/>";

   }

   closedir($dh);

  }

 }

?>


第2步:刪除目錄及目錄下所有的文件

 代碼如下 復制代碼


function delDirAndFile( $dirName ){ 

 if ( $handle = opendir( "$dirName" ) ) { 

  while ( false !== ( $item = readdir( $handle ) ) ) { 

   if ( $item != "." && $item != ".." ) { 

     if ( is_dir( "$dirName/$item" ) ) { 

       delDirAndFile( "$dirName/$item" ); 

     } else { 

       if( unlink( "$dirName/$item" ) )echo "已刪除文件: $dirName/$item<br />n"; 

     } 

    } 

   } 

  closedir( $handle ); 

  if( rmdir( $dirName ) ) echo "成功刪除目錄: $dirName<br />n"; 

 } 

}

 


第3步:刪除目錄下面的文件,不刪除目錄

 代碼如下 復制代碼


function delFileUnderDir( $dirName ){ 

 if ( $handle = opendir( "$dirName" ) ) { 

  while ( false !== ( $item = readdir( $handle ) ) ) { 

   if ( $item != "." && $item != ".." ) { 

    if ( is_dir( "$dirName/$item" ) ) { 

      delFileUnderDir( "$dirName/$item" ); 

     } else { 

      if( unlink( "$dirName/$item" ) ) echo "已刪除文件:$dirName/$item<br />n"; 

     } 

    } 

   } 

  closedir( $handle ); 

 } 

}

小結

這個我們先是從獲取目錄所有所文件與目錄開始然後在基礎上進行刪除操作。

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