您好,登錄后才能下訂單哦!
這期內(nèi)容當(dāng)中小編將會(huì)給大家?guī)?lái)有關(guān)使用PHP怎么讀取目錄樹(shù),文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
php是一個(gè)嵌套的縮寫名稱,是英文超級(jí)文本預(yù)處理語(yǔ)言,它的語(yǔ)法混合了C、Java、Perl以及php自創(chuàng)新的語(yǔ)法,主要用來(lái)做網(wǎng)站開(kāi)發(fā),許多小型網(wǎng)站都用php開(kāi)發(fā),因?yàn)閜hp是開(kāi)源的,從而使得php經(jīng)久不衰。
思路:
1. 列出目錄中的文件。
2. 判斷是否是目錄,如果是目錄就繼續(xù)遞歸。
3. 將所有文件名,存入多維數(shù)組
<?php function recurDir($pathName) { //將結(jié)果保存在result變量中 $result = array(); $temp = array(); //判斷傳入的變量是否是目錄 if(!is_dir($pathName) || !is_readable($pathName)) { return null; } //取出目錄中的文件和子目錄名,使用scandir函數(shù) $allFiles = scandir($pathName); //遍歷他們 foreach($allFiles as $fileName) { //判斷是否是.和..因?yàn)檫@兩個(gè)東西神馬也不是。。。 if(in_array($fileName, array('.', '..'))) { continue; } //路徑加文件名 $fullName = $pathName.'/'.$fileName; //如果是目錄的話就繼續(xù)遍歷這個(gè)目錄 if(is_dir($fullName)) { //將這個(gè)目錄中的文件信息存入到數(shù)組中 $result[$fullName] = recurDir($fullName); }else { //如果是文件就先存入臨時(shí)變量 $temp[] = $fullName; } } //取出文件 if($temp) { foreach($temp as $f) { $result[] = $f; } } return $result; } //驗(yàn)證一下這個(gè)函數(shù)是否好用! $tree = recurDir('cart_ajax'); echo "<pre>"; print_r($tree); echo "</pre>"; ?>
cart_ajax文件夾結(jié)構(gòu)
js文件夾下的內(nèi)容
顯示結(jié)果
大功告成了!目錄的級(jí)別確實(shí)是這樣的,不過(guò)看起來(lái)也太low了吧!稍微美化一下吧!
function beautifulTree($arr, $l = '-|') { static $l = ''; static $str = ''; //遍歷剛才得到的目錄樹(shù) foreach($arr as $key=>$val) { //如果是個(gè)數(shù)組,也就代表它是個(gè)目錄,那么就在它的子文件中加入-|來(lái)表示是下一級(jí)吧 if(is_array($arr[$key])) { $str.=$l.$key."<br/>"; $l.='-|'; beautifulTree($arr[$key], $l); }else { $str.=$l.$val."<br/>"; } } $l = ''; return $str; } $beautifulTree = beautifulTree($tree); echo "<pre>"; print_r($beautiful); echo "</pre>";
顯示結(jié)果
上述就是小編為大家分享的使用PHP怎么讀取目錄樹(shù)了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。