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 imagecreatetruecolor 创建高清和透明图片代码小结
May 15 PHP
把1316这个数表示成两个数的和,其中一个为13的倍数,另一个是11的倍数,求这两个数。
Jun 24 PHP
PHP函数spl_autoload_register()用法和__autoload()介绍
Feb 04 PHP
Zend Studio去除编辑器的语法警告设置方法
Oct 24 PHP
php根据分类合并数组的方法实例详解
Nov 06 PHP
php中strstr、strrchr、substr、stristr四个函数的区别总结
Sep 22 PHP
C# WinForm中实现快捷键自定义设置实例
Jan 23 PHP
php实现字符串反转输出的方法
Mar 14 PHP
PHP指定截取字符串中的中英文或数字字符的实例分享
Mar 18 PHP
php格式化json函数示例代码
May 12 PHP
PHP中将一个字符串部分字符用星号*替代隐藏的实现代码
Sep 08 PHP
tp5.1 框架数据库常见操作详解【添加、删除、更新、查询】
May 26 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 CURL模拟登录新浪微博抓取页面内容 基于EaglePHP框架开发
2012/01/16 PHP
详解WordPress中提醒安装插件以及隐藏插件的功能实现
2015/12/25 PHP
Highslide.js是一款基于js实现的网页中图片展示插件
2020/03/30 Javascript
js实现双向链表互联网机顶盒实战应用实现
2011/10/28 Javascript
Jquery插件实现点击获取验证码后60秒内禁止重新获取
2015/03/13 Javascript
jQuery实现折叠、展开的菜单组效果代码
2015/09/16 Javascript
JS模拟酷狗音乐播放器收缩折叠关闭效果代码
2015/10/29 Javascript
关于微信jssdk实现多图片上传的一点心得分享
2016/12/13 Javascript
基于Angularjs+mybatis实现二级评论系统(仿简书)
2017/02/13 Javascript
基于JS实现前端压缩上传图片的实例代码
2019/05/14 Javascript
Auto.JS实现抖音刷宝等刷视频app,自动点赞,自动滑屏,自动切换视频功能
2020/05/08 Javascript
[36:37]2014 DOTA2华西杯精英邀请赛5 24 VG VS iG
2014/05/25 DOTA
在GitHub Pages上使用Pelican搭建博客的教程
2015/04/25 Python
浅谈编码,解码,乱码的问题
2016/12/30 Python
Numpy 将二维图像矩阵转换为一维向量的方法
2018/06/05 Python
Python Pandas数据结构简单介绍
2019/07/03 Python
Django1.11配合uni-app发起微信支付的实现
2019/10/12 Python
解决Jupyter因卸载重装导致的问题修复
2020/04/10 Python
Python3通过chmod修改目录或文件权限的方法示例
2020/06/08 Python
如何在 Matplotlib 中更改绘图背景的实现
2020/11/26 Python
巴西家用小家电购物网站:Polishop
2016/08/07 全球购物
新西兰珠宝品牌:Michael Hill
2017/09/16 全球购物
CHRONEXT英国:您的首选奢华腕表目的地
2020/03/30 全球购物
什么是符号链接,什么是硬链接?符号链接与硬链接的区别是什么?
2013/05/03 面试题
搬家公司的创业计划书
2014/01/01 职场文书
《天游峰的扫路人》教学反思
2014/04/25 职场文书
医学专业毕业生求职信
2014/06/20 职场文书
《中彩那天》教学反思
2016/02/24 职场文书
一个成功的互联网创业项目,必须满足这些要求
2019/08/23 职场文书
《西游记》读后感(3篇)
2019/09/20 职场文书
六年级情感作文之500字
2019/10/23 职场文书
Python包argparse模块常用方法
2021/06/04 Python
详解Redis在SpringBoot工程中的综合应用
2021/10/16 Redis
Vue2.0搭建脚手架
2022/03/13 Vue.js
win11电脑关机鼠标灯还亮怎么解决? win11关机后鼠标灯还亮解决方法
2023/01/09 数码科技