PHP遍历并打印指定目录下所有文件实例
<?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'); //指定的文件路径
?>
相关文章
laravel 解决Eloquent ORM的save方法无法插入数据的问题
今天小编就为大家分享一篇laravel 解决Eloquent ORM的save方法无法插入数据的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2019-10-10
laravel高级的Join语法详解以及使用Join多个条件
今天小编就为大家分享一篇laravel高级的Join语法详解以及使用Join多个条件,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2019-10-10
TP5(thinkPHP5)框架使用ajax实现与后台数据交互的方法小结
这篇文章主要介绍了TP5(thinkPHP5)框架使用ajax实现与后台数据交互的方法,结合实例形式总结分析了thinkPHP5使用ajax与后台数据交互的两种实现方法及相关操作技巧,需要的朋友可以参考下2020-02-02
ThinkPHP整合datatables实现服务端分页的示例代码
下面小编就为大家分享一篇ThinkPHP整合datatables实现服务端分页的示例代码,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2018-02-02


最新评论