PHP递归遍历指定目录的文件并统计文件数量的方法

yipeiwu_com5年前PHP代码库

本文实例讲述了PHP递归遍历指定目录的文件并统计文件数量的方法。分享给大家供大家参考。具体实现方法如下:

<?php
//递归函数实现遍历指定文件下的目录与文件数量
function total($dirname,&$dirnum,&$filenum){
  $dir=opendir($dirname);
  echo readdir($dir)."<br>"; //读取当前目录文件
  echo readdir($dir)."<br>"; //读取上级目录文件
  while($filename=readdir($dir)){
    //要判断的是$dirname下的路径是否是目录
    $newfile=$dirname."/".$filename;
    //is_dir()函数判断的是当前脚本的路径是不是目录
    if(is_dir($newfile)){
      //通过递归函数再遍历其子目录下的目录或文件
      total($newfile,$dirnum,$filenum);
      $dirnum++;
    }else{
      $filenum++;
    }
  }
  closedir($dir);
}
$dirnum=0;
$filenum=0;
total("E:/AppServ/www/phpMyAdmin",$dirnum,$filenum);
echo "目录总数:".$dirnum."<br>";
echo "文件总数:".$filenum."<br>";
//遍历指定文件目录与文件数量结束
?>

希望本文所述对大家的php程序设计有所帮助。

相关文章

PHP类相关知识点实例总结

本文实例总结了PHP类相关知识点。分享给大家供大家参考,具体如下: 最终类与最终方法 如果父类中的方法被声明为 final,则子类无法覆盖该方法。如果一个类被声明为 final,则不能被...

PHP实现UTF8二进制及明文字符串的转化功能示例

本文实例讲述了PHP实现UTF8二进制及明文字符串的转化功能。分享给大家供大家参考,具体如下: <?php /***********本程序由云客编写。有空的时候承接ph...

PHP中一个有趣的preg_replace函数详解

PHP中一个有趣的preg_replace函数详解

0x01 起因 事情的起因是下午遇到了 preg_replace 函数,我们都知道 preg_replace 函数可能会导致命令执行。现在我们来一些情况。 0x02 经过 踩坑1:...

PHP has encountered an Access Violation at 7C94BD02解决方法

解决方法如下: php for windows的bug 参考: 第一种可能: 去掉 php中 eaccelerator 的扩展 这样做能够解决您的问题,不过可能会加重系统负担 因为eac...

php 计算两个时间戳相隔的时间的函数(小时)

这个是可以具体到小时的php代码复制代码 代码如下:/* Author: 杨宇 yangyu@sina.cn */ //输入两个时间戳,计算差值,也就是相差的小时数,如返回2:10,则表...