-
- //格式化输出目录大小 单位:Bytes,KB,MB,GB
- //也可以用于统计目录数
- //site bbs.it-home.org
- function 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<1024)
- {
- return $size." bytes";
- }
- else if($size<(1024*1024))
- {
- $size=round($size/1024,1);
- return $size." KB";
- }
- else if($size<(1024*1024*1024))
- {
- $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);
- ?>
复制代码
|