精美而实用的网站,关注web编程技术、网站运营、SEO推广,让您轻松愉快的学习

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 '&nbsp';
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");
?>
Tags:PHP 目录