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连接mssql:pdo odbc sql server
Jul 20 PHP
使用php统计字符串中中英文字符的个数
Jun 23 PHP
PHPMailer发送HTML内容、带附件的邮件实例
Jul 01 PHP
php过滤表单提交的html等危险代码
Nov 03 PHP
分享常见的几种页面静态化的方法
Jan 08 PHP
php实现阳历阴历互转的方法
Oct 28 PHP
php制作简单模版引擎
Apr 07 PHP
php判断手机浏览还是web浏览,并执行相应的动作简单实例
Jul 28 PHP
Laravel Intervention/image图片处理扩展包的安装、使用与可能遇到的坑详解
Nov 14 PHP
php实例化一个类的具体方法
Sep 19 PHP
Laravel (Lumen) 解决JWT-Auth刷新token的问题
Oct 24 PHP
THINKPHP5.1 Config的配置与获取详解
Jun 08 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的一个登录的类 [推荐]
2007/03/16 PHP
php stream_get_meta_data返回值
2013/09/29 PHP
ThinkPHP中Session用法详解
2014/11/29 PHP
php简单实现快速排序的方法
2015/04/04 PHP
TP5框架安全机制实例分析
2020/04/05 PHP
Yii Framework框架开发微信公众平台示例
2020/04/26 PHP
清除div下面的所有标签的方法
2014/02/17 Javascript
jQuery中outerWidth()方法用法实例
2015/01/19 Javascript
js简单的点击返回顶部效果实现方法
2015/04/10 Javascript
jQuery+jsp下拉框联动获取本地数据的方法(附源码)
2015/12/03 Javascript
精通JavaScript的this关键字
2020/05/28 Javascript
JavaScript学习笔记之ES6数组方法
2016/03/25 Javascript
js实现图片加载淡入淡出效果
2017/04/07 Javascript
使用bootstraptable插件实现表格记录的查询、分页、排序操作
2017/08/06 Javascript
Vue实战之vue登录验证的实现代码
2017/10/31 Javascript
JQuery Ajax跨域调用和非跨域调用问题实例分析
2019/04/16 jQuery
vue项目在线上服务器访问失败原因分析
2020/08/14 Javascript
vuex的数据渲染与修改浅析
2020/11/26 Vue.js
js实现有趣的倒计时效果
2021/01/19 Javascript
[05:02]2014DOTA2 TI中国区预选赛精彩TOPPLAY第三弹
2014/06/25 DOTA
[52:03]DOTA2-DPC中国联赛 正赛 Ehome vs iG BO3 第三场 1月31日
2021/03/11 DOTA
python购物车程序简单代码
2018/04/18 Python
tensorflow 使用flags定义命令行参数的方法
2018/04/23 Python
Django框架视图层URL映射与反向解析实例分析
2019/07/29 Python
Python数据可视化:顶级绘图库plotly详解
2019/12/07 Python
Pycharm远程连接服务器并实现代码同步上传更新功能
2020/02/25 Python
Python读取xlsx数据生成图标代码实例
2020/08/12 Python
Python3+selenium配置常见报错解决方案
2020/08/28 Python
css3隔行变换色实现示例
2014/02/19 HTML / CSS
运动会广播稿50字
2014/01/26 职场文书
电子商务专业应届生求职信
2014/05/28 职场文书
银行进社区活动总结
2014/07/07 职场文书
python3.9之你应该知道的新特性详解
2021/04/29 Python
JS中forEach()、map()、every()、some()和filter()的用法
2022/05/11 Javascript
MyBatis核心源码深度剖析SQL语句执行过程
2022/05/20 Java/Android
MySQL中dd::columns表结构转table过程及应用详解
2022/09/23 MySQL