我們在之前學習過函數(shù)遍歷的方法,相信大家都掌握具體的使用了。除此之外,使用遞歸也是遍歷文件夾不錯的選擇。下面我們先就遍歷方法進行說明,然后帶來實例的介紹。
1、方法說明
(1)定義函數(shù),判斷是否為目錄
(2)如果是目錄,則打開目錄,返回目錄句柄
(3)循環(huán)從目錄句柄中開始讀取
(4)判斷讀取的文件名是否為目錄,如果是目錄,則開始遞歸。
2、實例
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> <?php $path = "./phpmyadmin";//目標文件 //定義函數(shù) function showAll($path){ //判斷是不是目錄 if(is_dir($path)){ //如果是目錄,則打開目錄,返回目錄句柄 $handle = opendir($path); echo "<ul>"; //循環(huán)從目錄句柄中讀取 while (false !== $file = readdir($handle)) { //如果讀取到".",或".."時,則跳過 if($file == "." || $file == ".."){ continue; } echo "<li>$file</li>"; //判斷讀到的文件名是不是目錄,如果是目錄,則開始遞歸; if(is_dir($path.'/'.$file)){ //加上父目錄再判斷 showAll($path.'/'.$file); } } echo "</ul>"; //關(guān)閉目錄句柄 closedir($handle); } } //調(diào)用函數(shù) showAll($path); ?> </body> </html>
以上就是php遞歸遍歷文件夾的方法,只要對遞歸的流程有所了解,就可以展開有關(guān)的遞歸練習啦。