目录的遍历是PHP程序设计中经常会用到的一个功能,很多PHP项目都有这一功能模块。今天本文就来实例解析一下PHP采用自定义函数实现遍历目录下所有文件的方法。具体方法如下:
方法一:使用readir()遍历目录
实现代码如下:
function listDir($dir) { if(is_dir($dir)) { if($handle = opendir($dir)) { while($file = readdir($handle)) { if($file != "." && $file != "..") { if(is_dir($dir.DIRECTORY_SEPARATOR.$file)) { echo "目录名:".$dir.DIRECTORY_SEPARATOR."<font color="red">".$file."</font><br />"; listDir($dir.DIRECTORY_SEPARATOR.$file); }else{ echo "文件名:".$dir.DIRECTORY_SEPARATOR.$file."<br />"; } } } } closedir($handle); }else{ echo "非有效目录!"; } } listDir("./phpmyadmin");
方法二:使用dir()遍历目录
本例采用dir()函数遍历,执行成功时返回Directory类实例
function tree($dir) { $mydir = dir($dir); while($file = $mydir->read()) { if($file != "." && $file != "..") { if(is_dir("$dir/$file")) { echo "目录名:".$dir.DIRECTORY_SEPARATOR."<font color="red">".$file."</font><br />"; tree("$dir/$file"); }else{ echo "文件名:".$dir.DIRECTORY_SEPARATOR.$file."<br />"; } } } $mydir->close(); } tree("./phpmyadmin");
除此之外,还有很多实现目录遍历的方法,相信本文所述方法能够给大家的PHP程序设计带来一定帮助。