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


Posted in PHP onAugust 19, 2014

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

PHP 相关文章推荐
PHP5 安装方法
Jan 15 PHP
php实现两个数组相加的方法
Feb 17 PHP
php字符串替换函数substr_replace()用法实例
Mar 17 PHP
PHP连接MSSQL方法汇总
Feb 05 PHP
Zend Studio使用技巧两则
Apr 01 PHP
php mysqli查询语句返回值类型实例分析
Jun 29 PHP
PHP转换文本框内容为HTML格式的方法
Jul 20 PHP
php分页原理 分页代码 分页类制作教程
Sep 23 PHP
PHP脚本自动识别验证码查询汽车违章
Dec 20 PHP
详解PHP使用日期时间处理器Carbon人性化显示时间
Aug 10 PHP
Yii2.0框架模型多表关联查询示例
Jul 18 PHP
PHP 范围解析操作符(::)用法分析【访问静态成员和类常量】
Apr 14 PHP
浅谈php函数serialize()与unserialize()的使用方法
Aug 19 #PHP
PHP将回调函数作用到给定数组单元的方法
Aug 19 #PHP
php实现文件下载代码分享
Aug 19 #PHP
PHP中array_map与array_column之间的关系分析
Aug 19 #PHP
phpword插件导出word文件时中文乱码问题处理方案
Aug 19 #PHP
PHP防止表单重复提交的几种常用方法汇总
Aug 19 #PHP
PHP中单引号与双引号的区别分析
Aug 19 #PHP
You might like
thinkPHP框架实现多表查询的方法
2018/06/14 PHP
学习YUI.Ext 第二天
2007/03/10 Javascript
对google个性主页的拖拽效果的js的完整注释[转]
2007/04/10 Javascript
JQUERY复选框CHECKBOX全选,取消全选
2008/08/30 Javascript
Js 随机数产生6位数字
2010/05/13 Javascript
jQuery对象和Javascript对象之间转换的实例代码
2013/03/20 Javascript
javascript实现div的显示和隐藏的小例子
2013/06/25 Javascript
jquery eval解析JSON中的注意点介绍
2013/08/23 Javascript
使用jsonp完美解决跨域问题
2014/11/27 Javascript
使用AngularJS实现可伸缩的页面切换的方法
2015/06/19 Javascript
全面解析Bootstrap表单使用方法(表单按钮)
2015/11/24 Javascript
jquery计算出left和top,让一个div水平垂直居中的简单实例
2016/07/13 Javascript
基于JavaScript实现点击页面任何位置返回
2016/08/31 Javascript
jQuery实现可移动选项的左右下拉列表示例
2016/12/26 Javascript
JS实现二叉查找树的建立以及一些遍历方法实现
2017/04/17 Javascript
docker中编译nodejs并使用nginx启动
2017/06/23 NodeJs
基于dataset的使用和图片延时加载的实现方法
2017/12/11 Javascript
基于javascript实现贪吃蛇小游戏
2019/11/25 Javascript
如何利用 JS 脚本实现网页全自动秒杀抢购功能
2020/10/12 Javascript
如何通过Proxy实现JSBridge模块化封装
2020/10/22 Javascript
python 日期操作类代码
2018/05/05 Python
python对象与json相互转换的方法
2019/05/07 Python
python实现无边框进度条的实例代码
2020/12/30 Python
python opencv实现图像配准与比较
2021/02/09 Python
Html5自定义字体解决方法
2019/10/09 HTML / CSS
英国赛车、汽车改装和摩托车零件购物网站:Demon Tweeks
2018/10/29 全球购物
Madda Fella官网:美国冒险家服装品牌
2020/01/16 全球购物
介绍一下write命令
2012/09/24 面试题
前处理组长岗位职责
2014/03/01 职场文书
党组织公开承诺书
2014/03/29 职场文书
2014大学辅导员工作总结
2014/12/02 职场文书
优秀班主任推荐材料
2014/12/17 职场文书
一年级数学下册复习计划
2015/01/17 职场文书
认真学习保证书
2015/02/26 职场文书
护理专业自荐信范文
2015/03/06 职场文书
springboot中的pom文件 project报错问题
2022/01/18 Java/Android