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

yipeiwu_com6年前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树型类。分享给大家供大家参考。具体分析如下: 该实例原理简单,学过数据结构的一看就明白是什么道理了,不过今天在使用时数据中出现了子节点id(71)小于父节点id(10...

php 不使用js实现页面跳转

在页面跳转的时候 一般使用都是js window.location.href 当然也可以使用复制代码 代码如下: <html> <head> <meta h...

ThinkPHP使用心得分享-ThinkPHP + Ajax 实现2级联动下拉菜单

首先是数据库的设计。分类表叫cate. 我做的是分类数据的二级联动,数据需要的字段有:id,name(中文名),pid(父id). 父id的设置: 若数据没有上一级,则父id为0,若有...

PHP下获取上个月、下个月、本月的日期(strtotime,date)

今天写程序的时候,突然发现了很早以前写的获取月份天数的函数,经典的switch版,但是获得上月天数的时候,我只是把月份-1了,估计当时太困了吧,再看到有种毛骨悚然的感觉,本来是想再处理一...

PHP CLI模式下的多进程应用分析

PHP在很多时候不适合做常驻的SHELL进程, 他没有专门的gc例程, 也没有有效的内存管理途径. 所以如果用PHP做常驻SHELL, 你会经常被内存耗尽导致abort而unhappy....