在很多我们写PHP项目的时候,我们要遍历一个文件夹里面的所有目录,列出里面所有的文件,PHP本身自带的有一个readdir的函数,不过只能读取当前的目录,根据这个函数,我写了另外一个函数,用来实现我的需求。函数的原理很简单,主要就是用了一下递归调用。

 1 function file_list($path){
 2     if ($handle = opendir($path)) {
 3         while (false !== ($file = readdir($handle))) {
 4             if ($file != "." && $file != "..") {
 5                 if (is_dir($path."/".$file)) {
 6                     echo $path."".$file."<br>";//去掉此行显示的是所有的非目录文件
 7                     file_list($path."/".$file);
 8                 } else {
 9                     echo $path."".$file."<br>";
10                 }
11             }
12         }
13     }
14 }

这个函数还可以继续做一些改进,加入一些文件夹或文件的图标什么的,这样就可以做成更强大的一个函数了,有兴趣的朋友可以扩展的一下。

posted on 2009-06-05 22:04  睿达团队  阅读(1000)  评论(0编辑  收藏  举报