php 刪除指定擴展名文件


 1 <?php
 2 /**
 3  *@param $path文件夾絕對路徑 $file_type待刪除文件的后綴名
 4  *return void
 5  */
 6 function clearn_file($path, $file_type = 'bak')
 7 {
 8     //判斷要清除的文件類型是否合格
 9     if (!preg_match('/^[a-zA-Z]{2,}$/', $file_type)) {
10         return false;
11     }
12     //當前路徑是否為文件夾或可讀的文件
13     if (!is_dir($path) || !is_readable($path)) {
14         return false;
15     }
16     //遍歷當前目錄下所有文件
17     $all_files = scandir($path);
18     foreach ($all_files as $filename) {
19         //跳過當前目錄和上一級目錄
20         if (in_array($filename, array(".", ".."))) {
21             continue;
22         }
23         //進入到$filename文件夾下
24         $full_name = $path . '/' . $filename;
25         //判斷當前路徑是否是一個文件夾,是則遞歸調用函數
26         //否則判斷文件類型,匹配則刪除
27         if (is_dir($full_name)) {
28             clearn_file($full_name, $file_type);
29         } else {
30             preg_match("/(.*)\.$file_type/", $filename, $match);
31             if (!empty($match[0][0])) {
32                 echo $full_name;
33                 echo '<br>';
34                 unlink($full_name);
35             }
36         }
37     }
38 }
39 
40 //測試一下
41 $folderpath = $_SERVER["DOCUMENT_ROOT"] . "/abc";//要操作的目錄
42 $deltype = array('gif', 'jpg', 'pdf');
43 foreach ($deltype as $file_type) {
44     clearn_file($folderpath, $file_type);
45 }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM