php - 在php中计算一个文件夹中所有文件和所有目录的总和
问题描述
对于文件管理,我计算每个文件的大小和特定文件夹中的目录。我计算如下文件的大小:
sizeFormat(filesize($dir . '/' . $file))
以及目录(包括子目录)的大小,如下所示:
sizeFormat(recursive_directory_size($dir . '/' . $file))
我现在如何计算该特定文件夹中所有文件和目录的总大小?
解决方案
试试这个功能,我希望它是你需要的。
function dirsize($dir) {
if(is_file($dir)) return array('size'=>filesize($dir));
if($dh=opendir($dir)) {
$size=0;
$n = 0;
while(($file=readdir($dh))!==false) {
if($file=='.' || $file=='..') continue;
$n++;
$data = dirsize($dir.'/'.$file);
$size += $data['size'];
}
closedir($dh);
return array('size'=>$size);
}
return array('size'=>0);
}
print_r(dirsize("bitnami.css"));
print_r(dirsize("some_folder"));
推荐阅读
- matplotlib - 无法在从 Julia 调用的 PyPlot 中显示标签
- python - 从数据框列python中删除非日期值
- javascript - 添加和删除数组
- javascript - Moment.js DST 转换
- c++ - 具有两个关系运算符的单个变量如何在内部工作
- json - 用于 Elasticsearch 的 logstash 过滤器插件是什么?
- sql - SQL 按详细信息和月份聚合事务
- google-data-studio - 模仿 Matplotlib 的“缩放到矩形”功能
- python - Python SSL 错误握手
- c# - C# asp.net 4 尝试检查会话是否为空,并出现错误