//格式化输出目录大小 单位:Bytes,KB,MB,GB//也可以用于统计目录数//site bbs.it-home.orgfunction getDirectorySize($path){$totalsize = 0;$totalcount = 0;$dircount = 0;if ($handle = opendir ($path)){while (false !== ($file = readdir($handle))){$nextpath = $path . '/' . $file;if ($file != '.' && $file != '..' && !is_link ($nextpath)){if (is_dir ($nextpath)){$dircount++;$result = getDirectorySize($nextpath);$totalsize += $result['size'];$totalcount += $result['count'];$dircount += $result['dircount'];}elseif (is_file ($nextpath)){$totalsize += filesize ($nextpath);$totalcount++;}}}}closedir ($handle);$total['size'] = $totalsize;$total['count'] = $totalcount;$total['dircount'] = $dircount;return $total;}function sizeFormat($size){$sizeStr='';if($size {return $size." bytes";}else if($size {$size=round($size/1024,1);return $size." KB";}else if($size {$size=round($size/(1024*1024),1);return $size." MB";}else{$size=round($size/(1024*1024*1024),1);return $size." GB";}}$path="/home/www/htdocs";$ar=getDirectorySize($path);echo "路径 : $path";echo "目录大小 : ".sizeFormat($ar['size'])."";echo "文件数 : ".$ar['count']."";echo "目录术 : ".$ar['dircount']."";//print_r($ar);?>复制代码
