PHP遍历并打印指定目录下所有文件实例


Posted in PHP onFebruary 10, 2014
<?php
//功能:遍历并打印指定目录下所有文件
function scan_dir($dir_name,$dir_flag=1) {
 static $FILE_COUNT=1;                //记录文件数目 初值为1 目录名称不记
 $FILE_COUNT--;                       //每调用一次scan_dir()函数自减1
 @$dir_handle=opendir($dir_name);     //抑制错误信息显示  便于自定义错误显示
 if(!$dir_handle)
 die("目录打开错误!");
 while(false!==($filename=readdir($dir_handle)))  //文件名为‘0'时,readdir返回 FALSE,判断返回值是否不全等
 {
  $flag=$dir_flag;                 //古怪的 is_dir($filename) ! $filename这个路径必须能够寻到!当$filename不存在或者不是目录时返回false
  if($filename!='.'&&$filename!='..')
  {
   $FILE_COUNT++;                   //不记录当前路径和上一级路径
   while($flag>0&&--$flag)          //负数仍为真
   echo ' ';
   if(is_dir($dir_name.$filename))  //判断 是否为一个目录
   {
    echo '<strong>'."<a href=".$dir_name.$filename.">".$filename."</a></strong><br>";
    scan_dir($dir_name.$filename.'/',$dir_flag+1);      //$dir_flag标志目录树层次
   }
   else
   {
    echo "<a href=".$dir_name.$filename.">".$filename."</a><br>";
   }
  }
 }
 closedir($dir_handle);                 //关闭目录句柄
 echo "文件总数:".$FILE_COUNT.'<br>';
}
scan_dir('D:\wamp\www\test\lamp61');  //指定的文件路径
?>
PHP 相关文章推荐
php生成随机数或者字符串的代码
Sep 05 PHP
qq登录,新浪微博登录接口申请过程中遇到的问题
Jul 22 PHP
smarty中post用法实例
Nov 28 PHP
php身份证号码检查类实例
Jun 18 PHP
php获取远程文件的内容和大小
Nov 03 PHP
PHP中set error handler函数用法小结
Nov 11 PHP
phplist及phpmailer(组合使用)通过gmail发送邮件的配置方法
Mar 30 PHP
php中json_encode不兼容JSON_UNESCAPED_UNICODE的解决方案
May 31 PHP
JSON两种结构之对象和数组的理解
Jul 19 PHP
PHP批量获取网页中所有固定种子链接的方法
Nov 18 PHP
老生常谈PHP中的数据结构:DS扩展
Jul 17 PHP
动态表单验证的操作方法和TP框架里面的ajax表单验证
Jul 19 PHP
php生成excel文件的简单方法
Feb 08 #PHP
php中利用explode函数分割字符串到数组
Feb 08 #PHP
PHP判断变量是否为0的方法
Feb 08 #PHP
php读取文件内容的三种可行方法示例介绍
Feb 08 #PHP
php中\r \r\n \t的区别示例介绍
Feb 08 #PHP
php获得用户ip地址的比较不错的方法
Feb 08 #PHP
php全角字符转换为半角函数
Feb 07 #PHP
You might like
使用PHP和XSL stylesheets转换XML文档
2006/10/09 PHP
如何用phpmyadmin设置mysql数据库用户的权限
2012/01/09 PHP
php和js如何通过json互相传递数据相关问题探讨
2013/02/26 PHP
thinkphp整合微信支付代码分享
2016/11/24 PHP
ajaxControlToolkit AutoCompleteExtender的用法
2008/10/30 Javascript
当jQuery1.7遇上focus方法的问题
2014/01/26 Javascript
jQuery 删除/替换DOM元素的几种方式
2014/05/20 Javascript
Nodejs实现多人同时在线移动鼠标的小游戏分享
2014/12/06 NodeJs
node.js中的http.response.setHeader方法使用说明
2014/12/14 Javascript
浅谈重写window对象的方法
2014/12/29 Javascript
讲解JavaScript中for...in语句的使用方法
2015/06/03 Javascript
JavaScript的jQuery库中function的存在和参数问题
2015/08/13 Javascript
jquery 点击元素后,滚动条滚动至该元素位置的方法
2016/08/05 Javascript
BootStrap Table 设置height表头与内容无法对齐的问题
2016/12/28 Javascript
如何快速上手Vuex
2017/02/14 Javascript
详解微信小程序 相对定位和绝对定位
2017/05/11 Javascript
js CSS3实现卡牌旋转切换效果
2017/07/04 Javascript
mui框架移动开发初体验详解
2017/10/11 Javascript
H5+C3+JS实现双人对战五子棋游戏(UI篇)
2020/05/28 Javascript
VUE项目初建和常见问题总结
2019/09/12 Javascript
[01:32]TI珍贵瞬间系列(一)
2020/08/26 DOTA
详解Python3序列赋值、序列解包
2019/05/14 Python
使用Flask-Cache缓存实现给Flask提速的方法详解
2019/06/11 Python
opencv-python 提取sift特征并匹配的实例
2019/12/09 Python
tensorflow下的图片标准化函数per_image_standardization用法
2020/06/30 Python
利用Python将图片中扭曲矩形的复原
2020/09/07 Python
手把手教你从PyCharm安装到激活(最新激活码),亲测有效可激活至2089年
2020/11/25 Python
python爬虫快速响应服务器的做法
2020/11/24 Python
仿酷狗html5手机音乐播放器主要部分代码
2013/05/15 HTML / CSS
代理协议书范本
2014/04/22 职场文书
设备管理实施方案
2014/05/31 职场文书
2014国庆节演讲稿:祖国在我心中(400字)
2014/09/25 职场文书
企业财务总监岗位职责
2015/04/03 职场文书
小学2016年“我们的节日·重阳节”活动总结
2016/04/01 职场文书
postman中form-data、x-www-form-urlencoded、raw、binary的区别介绍
2022/01/18 HTML / CSS
Java设计模式之代理模式
2022/04/22 Java/Android