国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > PHP > 正文

PHP遞歸遍歷指定文件夾內的文件實現方法

2024-05-04 23:52:23
字體:
來源:轉載
供稿:網友

今天早上在地鐵上看了關于文件和文件夾的一章,正好最近剛搞懂linux的文件系統,覺得對文件屬性的訪問跟Shell命令很像,所以想晚上來實踐一下。

發現php的文件夾函數好像沒有提供遍歷文件夾下的所有文件(包括子目錄中的文件),于是,就想自己實現一個。

在寫的時候發現一些操作文件夾的函數并不是自己想的那樣。比如,dirname()根據提供的完整文件路徑來取得文件所在的文件夾的路徑,但如果你傳入的是文件夾,它取的就是它的父文件夾。這點要明白。basename()也是同樣的道理,傳入文件夾路徑取得就是文件夾的名字。這兩個函數返回的結果結尾都不加'/'

<?php$dirPath='/home/WWW/Test';//目錄,結尾不加'/‘//執行遍歷recursion_readdir($dirPath);/***@summary 重復times次字符char*@param $char 需要重復的字符*@param $times 重復次數*@return 返回重復字符組成的字符串*/function forChar($char='-',$times=0){  $result='';  for($i=0;$i<$times;$i++){    $result.=$char;  }  return $result;}/***@summary  遞歸讀取目錄*@param $dirPath 目錄*@param $Deep=0 深度,用于縮進,無需手動設置*@return 無*/function recursion_readdir($dirPath,$Deep=0){ $resDir=opendir($dirPath); while($basename=readdir($resDir)){   //當前文件路徑   $path=$dirPath.'/'.$basename;   if(is_dir($path) AND $basename!='.' AND $basename!='..'){    //是目錄,打印目錄名,繼續迭代    echo forChar('-',$Deep).$basename.'/<br/>';    $Deep++;//深度+1    recursion_readdir($path,$Deep);   }else if(basename($path)!='.' AND basename($path)!='..'){     //不是文件夾,打印文件名     echo forChar('-',$Deep).basename($path).'<br/>';   } } closedir($resDir);}

以上這篇PHP遞歸遍歷指定文件夾內的文件實現方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持VeVb武林網。


注:相關教程知識閱讀請移步到PHP教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 东平县| 常宁市| 三门县| 三原县| 陈巴尔虎旗| 黔东| 阿荣旗| 沁源县| 循化| 怀集县| 广水市| 灵石县| 江华| 卫辉市| 江永县| 合阳县| 平安县| 潜江市| 鄂伦春自治旗| 杭锦旗| 永济市| 洛南县| 富顺县| 环江| 肇源县| 昔阳县| 云安县| 黄浦区| 桐乡市| 宜春市| 稻城县| 奇台县| 姚安县| 琼结县| 辽阳市| 碌曲县| 广州市| 肥城市| 吉水县| 岱山县| 城市|