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 相关文章推荐
PHP XML error parsing SOAP payload on line 1
Jun 17 PHP
PHP $_FILES函数详解
Mar 09 PHP
Laravel 5框架学习之子视图和表单复用
Apr 09 PHP
PHP中的switch语句的用法实例详解
Oct 21 PHP
一个完整的php文件上传类实例讲解
Oct 27 PHP
Zend Framework教程之前端控制器Zend_Controller_Front用法详解
Mar 07 PHP
PHP实现移除数组中为空或为某值元素的方法
Jan 07 PHP
基于PHP实现栈数据结构和括号匹配算法示例
Aug 10 PHP
Laravel学习教程之IOC容器的介绍与用例
Aug 15 PHP
php实现数组中出现次数超过一半的数字的统计方法
Oct 14 PHP
用PHP的反射实现委托模式的讲解
Mar 22 PHP
php模拟实现斗地主发牌
Apr 22 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
如何对PHP程序中的常见漏洞进行攻击
2006/10/09 PHP
[转帖]PHP世纪万年历
2006/12/06 PHP
php 获得汉字拼音首字母的函数
2009/08/01 PHP
PHP HTML JavaScript MySQL代码如何互相传值的方法分享
2012/09/30 PHP
php存储过程调用实例代码
2013/02/03 PHP
深入php常用函数的使用汇总
2013/06/08 PHP
php中如何同时使用session和cookie来保存用户登录信息
2013/07/05 PHP
php使用cookie保存登录用户名的方法
2015/01/26 PHP
Yii视图CGridView实现操作按钮定义地址示例
2016/07/14 PHP
php实现遍历文件夹的方法汇总
2017/03/02 PHP
laravel 实现划分admin和home 模块分组
2019/10/15 PHP
tp5框架基于ajax实现异步删除图片的方法示例
2020/02/10 PHP
B/S模式项目中常用的javascript汇总
2013/12/17 Javascript
jQuery中ready事件用法实例
2015/01/19 Javascript
JS获取当前页面名称的简单实例
2016/08/19 Javascript
BootStrap的table表头固定tbody滚动的实例代码
2016/08/24 Javascript
详解a++和++a的区别
2017/08/30 Javascript
JavaScript实现短暂提示框功能
2018/04/04 Javascript
详解React-Router中Url参数改变页面不刷新的解决办法
2018/05/08 Javascript
使用proxy实现一个更优雅的vue【推荐】
2018/06/19 Javascript
详解使用VUE搭建后台管理系统(vue-cli更新至3.0)
2018/08/22 Javascript
vue动画之点击按钮往上渐渐显示出来的实例
2018/09/29 Javascript
自定义javascript验证框架示例【附源码下载】
2019/05/31 Javascript
ant design中upload组件上传大文件,显示进度条进度的实例
2020/10/29 Javascript
[01:30]2016国际邀请赛中国区预选赛神秘商店火爆开启
2016/06/26 DOTA
Python实现确认字符串是否包含指定字符串的实例
2018/05/02 Python
python 统计一个列表当中的每一个元素出现了多少次的方法
2018/11/14 Python
python3实现斐波那契数列(4种方法)
2019/07/15 Python
淘宝秒杀python脚本 扫码登录版
2019/09/19 Python
python turtle工具绘制四叶草的实例分享
2020/02/14 Python
美国气象仪器、花园装饰和墙壁艺术商店:Wind & Weather
2019/05/29 全球购物
2015年英语教研组工作总结
2015/05/23 职场文书
《曹冲称象》教学反思
2016/02/20 职场文书
少儿励志名言(80句)
2019/08/14 职场文书
python实现socket简单通信的示例代码
2021/04/13 Python
方法汇总:Python 安装第三方库常用
2022/04/26 Python