1. 程式人生 > >PHP遍歷目錄和文件及子目錄和文件

PHP遍歷目錄和文件及子目錄和文件

close 進行 listdir 目錄下的文件 sed read file 目錄 調用函數

正常直接使用opendir方法,就可以讀到所有的目錄和文件

文件可以直接記錄下來,目錄則需要再進一步獲取裏邊的文件信息

也就是,如果當前讀出來是目錄,則需要再次調用函數本身(遞歸),直到沒有目錄

循環最後是讀到沒有文件(目錄也是文件)結束

 1 <?php
 2 // 列出指定目錄下所有目錄和文件
 3 function listDirFiles($dir)
 4 {
 5     $arr = [];
 6     if (is_dir($dir)) {//如果是目錄,則進行下一步操作
 7         $d = opendir($dir);//打開目錄
 8         if
($d) {//目錄打開正常 9 while (($file = readdir($d)) !== false) {//循環讀出目錄下的文件,直到讀不到為止 10 if ($file != ‘.‘ && $file != ‘..‘) {//排除一個點和兩個點 11 if (is_dir($file)) {//如果當前是目錄 12 $arr[$file] = listDirFiles($file);//進一步獲取該目錄裏的文件 13 } else
{ 14 $arr[] = $file;//記錄文件名 15 } 16 } 17 } 18 } 19 closedir($d);//關閉句柄 20 } 21 return $arr; 22 } 23 24 25 print_r(listDirFiles(‘go‘));

PHP遍歷目錄和文件及子目錄和文件