PHP之目录遍历

Posted ChotocateCat

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP之目录遍历相关的知识,希望对你有一定的参考价值。

 1 <?php
 2 
 3     header("content-type:text/html; charset=utf8");
 4     //递归查看目录文件
 5 
 6     $pathname = "D:/qq";
 7     //调用递归函数
 8     $res = diGui($pathname);
 9     var_dump($res);
10 
11     function  diGui($pathname, $deep=0){
12         //存储遍历过的所有文件内容
13         static $file_list = array();
14 
15         //打开目录句柄
16         $handle = opendir($pathname);
17         while (false !== ($filename =readdir($handle))) { //false!== 防止出现目录文件名字为0的情况
18             //过滤再文件夹的点点文件夹
19             if ($filename == ‘.‘ || $filename == ‘..‘) {
20                 continue;
21             }
22 
23 
24             //输出当前目录信息
25             //echo str_repeat("&nbsp;", $filename)."<br>";
26 
27             //声明数组变量存储一次遍历的目录信息
28             $file = array();
29             $file[‘filename‘] = $filename;
30             $file[‘deep‘] = $deep;
31 
32             //把以上信息存储到静态数组中
33             $file_list[] = $file;
34 
35             if (is_dir($pathname.‘/‘.$filename)) {
36                 //可变函数
37                 $current_func = __FUNCTION__ ;//获得当前函数名称
38                 $current_func($pathname.‘/‘.$filename, $deep+1);
39             }
40         }
41         // closedir — 关闭目录句柄
42         closedir($handle);
43 
44         return $file_list;
45     }

 

以上是关于PHP之目录遍历的主要内容,如果未能解决你的问题,请参考以下文章

(实用篇)PHP不用递归遍历目录下所有文件的代码

PHP遍历并打印指定目录下所有文件实例

PHP面试题之文件目录操作

php无限遍历目录

php文件操作之递归实现目录显示

php 遍历文件夹文件问题