当前位置:首页 > PHP教程 > php文件操作 > 列表

PHP采用自定义函数实现遍历目录下所有文件的方法

发布:smiling 来源: PHP粉丝网  添加日期:2021-04-06 13:55:32 浏览: 评论:0 

这篇文章主要介绍了PHP采用自定义函数实现遍历目录下所有文件的方法,是PHP程序开发中常见的功能,需要的朋友可以参考下。

目录的遍历是PHP程序设计中经常会用到的一个功能,很多PHP项目都有这一功能模块。今天本文就来实例解析一下PHP采用自定义函数实现遍历目录下所有文件的方法。具体方法如下:

方法一:使用readir()遍历目录

实现代码如下:

  1. function listDir($dir) 
  2. { 
  3.   if(is_dir($dir)) 
  4.   { 
  5.     if($handle = opendir($dir)) 
  6.     { 
  7.       while($file = readdir($handle)) 
  8.       { 
  9.         if($file != '.' && $file != '..') 
  10.         { 
  11.           if(is_dir($dir.DIRECTORY_SEPARATOR.$file)) 
  12.           { 
  13.             echo '目录名:'.$dir.DIRECTORY_SEPARATOR.'<font color="red">'.$file.'</font><br />'; 
  14.             listDir($dir.DIRECTORY_SEPARATOR.$file); 
  15.           }else{ 
  16.             echo '文件名:'.$dir.DIRECTORY_SEPARATOR.$file.'<br />'; 
  17.           } 
  18.         } 
  19.       } 
  20.     } 
  21.     closedir($handle); 
  22.   }else{ 
  23.     echo '非有效目录!'; 
  24.   } 
  25. } 
  26. listDir('./phpmyadmin');  

方法二:使用dir()遍历目录

本例采用dir()函数遍历,执行成功时返回Directory类实例

  1. function tree($dir) 
  2. { 
  3.   $mydir = dir($dir); 
  4.   while($file = $mydir->read()) 
  5.   { 
  6.     if($file != '.' && $file != '..') 
  7.     { 
  8.       if(is_dir("$dir/$file")) 
  9.       { 
  10.         echo '目录名:'.$dir.DIRECTORY_SEPARATOR.'<font color="red">'.$file.'</font><br />'; 
  11.         tree("$dir/$file"); 
  12.       }else{ 
  13.         echo '文件名:'.$dir.DIRECTORY_SEPARATOR.$file.'<br />'; 
  14.       } 
  15.     } 
  16.   } 
  17.   $mydir->close(); 
  18. } 
  19. tree('./phpmyadmin'); 

除此之外,还有很多实现目录遍历的方法,相信本文所述方法能够给大家的PHP程序设计带来一定帮助。

Tags: PHP遍历目录

分享到: