PHP目录遍历程序代码,将显示指定目录下的所有文件和文件夹,并列出这些文件,最后统计出文件总数。使用的PHP函数有is_dir、closedir、scan_dir等。
本代码比较准确,可判断目录下的是文件还是目录
<?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; //当$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("other"); ?>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。