遍历目录,统计目录的大小

Posted 阿鸠

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了遍历目录,统计目录的大小相关的知识,希望对你有一定的参考价值。

<?php
header("Content-type:text/html;charset=utf-8");
function  dirSize($directory){  //创建一个统计目录大小的函数
    $dir_size=0;//累计目录的大小
    if($dir_handle=opendir($directory)){  //打开目录。返回的是一个句柄
        while($result=readdir($dir_handle)){//遍历目录的所有文件,参数是句柄。返回的是当前位置的文件名
            if($result!="."&&$result!=".."){//排除两个特殊的目录
                $file=$directory."/".$result;//将子目录和当前的目录连接在一起
                if(is_dir($file))//判断是否为目录
                    $dir_size+=dirSize($file);//是目录的话就调用递归函数

                if(is_file($file))//判断是否为文件
                    $dir_size+=filesize($file);//累加文件的大小
            }
                    }
        closedir($dir_handle);//关闭句柄
        return $dir_size;//返回累加的结果
  }
}
$dir_size=dirSize(‘phpMyAdmin‘);
echo  round($dir_size/1024,2)."KB";

 

以上是关于遍历目录,统计目录的大小的主要内容,如果未能解决你的问题,请参考以下文章

指定文件目录遍历所有子目录统计文档的单词出现数量

python 通过给定目录统计所有的不同子文件类型及占用内存

php 统计某个目录中所有文件的大小

linux下如何统计目录大小

linux下如何统计目录大小

如何在 node.js 中获取目录大小而不递归遍历目录?