PHP는 지정된 폴더 정보(폴더 수, 파일 수, 폴더 크기)를 계산합니다.
풀어 주다: 2016-07-25 08:55:52
-
- //格式化输出目录大小 单位: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);
- ?>
复制代码
|
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
-
2024-10-22 09:46:29
-
2024-10-13 13:53:41
-
2024-10-12 12:15:51
-
2024-10-11 22:47:31
-
2024-10-11 19:36:51
-
2024-10-11 15:50:41
-
2024-10-11 15:07:41
-
2024-10-11 14:21:21
-
2024-10-11 12:59:11
-
2024-10-11 12:17:31