해당하는 폴더 전체 용량 구하는 소스입니다.

<?php
 
// 폴더 전체용량
 
function dirsize($dir
){
       static 
$size$cnt
;
       
$fp opendir($dir
);
       while(
false !== ($entry readdir($fp
))){
             if((
$entry != ".") && ($entry != ".."
)){
                  if(
is_dir($dir.'/'.$entry
)){
                       
clearstatcache
();
                       
dirsize($dir.'/'.$entry
);
                  } else if(
is_file($dir.'/'.$entry
)){
                       
$size += filesize($dir.'/'.$entry
);
                       
clearstatcache
();
                       
$cnt
++;
                  }
             }
       }
      
closedir($fp
);

      
$stat 
= array(
                
'size' => $size
,
                
'cnt' => 
$cnt
      
);
      return 
$stat
;
 } 
// end func

 
function attach($size
) {
      if(
$size 1024
){
            return 
number_format($size*1.024).'b'
;
      } else if((
$size 1024) && ($size 1024000
)){
            return 
number_format($size*0.001024).'Kb'
;
      } else if(
$size 1024000
){
            return 
number_format($size*0.000001024,2).'Mb'
;
      }
      return 
0
;
 }

 
// 사용법: $arr = dirsize(폴더 경로);
 // $arr['cnt'] <- 총 파일 수, $arr['size'] <- 총 용량 수
 
$stat dirsize('./includes'
);

 echo 
"총 파일수: ".$stat['cnt']." 총 파일 용량: ".attach($stat['size'
]);

 
?>


블로그 이미지

하보니

하보니와 함께하는 phP 초보

댓글을 달아 주세요