欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

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

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

目录的遍历是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程序设计带来一定帮助。