PHP计算指定文件夹的信息(文件夹数,文件数,文件夹大小)
-
-
- //代码也可以用于统计目录数
- //格式化输出目录大小 单位:Bytes,KB,MB,GB
-
- 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 {
- 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);
- ?>
-
-
复制代码
|
PHP
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系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