PHP计算目录大小
<?php
$dir = "rdhdc.com_bak";
$fs = [];
if(is_dir($dir)){
$dh = scandir($dir);
if($dh){
foreach($dh as $file){
if($file == '.' || $file == '..')continue;
if(is_file($dir.'/'.$file)){
$fs[$file] = filesize($dir.'/'.$file);
}else{
$count = 0;
$count += scanDdir( $dir.'/'.$file);
$fs[$file] = $count;
}
}
}
}
asort($fs);
foreach($fs as $k => $v){
echo $k,'--*****--',floor($v/1024),PHP_EOL;
}
function scanDdir($dir){
$count = 0;
$dh = scandir($dir);
if($dh){
foreach($dh as $file){
if($file == '.' || $file == '..')continue;
if(is_file($dir.'/'.$file)){
$count += filesize($dir.'/'.$file);
}else{
$count += scanDdir( $dir.'/'.$file);
}
}
}
return $count;
}