php 遍历一个文件夹下的所有文件和子文件
程序员文章站
2022-06-20 08:36:32
php 遍历一个文件夹下的所有文件和子文件 ......
php 遍历一个文件夹下的所有文件和子文件
1 <?php 2 /** 3 * 将读取到的目录以数组的形式展现出来 4 * @return array 5 * opendir() 函数打开一个目录句柄,可由 closedir(),readdir() 和 rewinddir() 使用。 6 * is_dir() 函数检查指定的文件是否是目录。 7 * readdir() 函数返回由 opendir() 打开的目录句柄中的条目。 8 * @param array $files 所有的文件条目的存放数组 9 * @param string $file 返回的文件条目 10 * @param string $dir 文件的路径 11 * @param resource $handle 打开的文件目录句柄 12 */ 13 function my_scandir($dir) 14 { 15 //定义一个数组 16 $files = array(); 17 //检测是否存在文件 18 if (is_dir($dir)) { 19 //打开目录 20 if ($handle = opendir($dir)) { 21 //返回当前文件的条目 22 while (($file = readdir($handle)) !== false) { 23 //去除特殊目录 24 if ($file != "." && $file != "..") { 25 //判断子目录是否还存在子目录 26 if (is_dir($dir . "/" . $file)) { 27 //递归调用本函数,再次获取目录 28 $files[$file] = my_scandir($dir . "/" . $file); 29 } else { 30 //获取目录数组 31 $files[] = $dir . "/" . $file; 32 } 33 } 34 } 35 //关闭文件夹 36 closedir($handle); 37 //返回文件夹数组 38 return $files; 39 } 40 } 41 } 42 43 echo "<pre>"; 44 print_r(my_scandir("./aa")); //电脑的文件路径即可