一个统计目录文件大小的php函数

早上刚到公司,头告诉我,抓紧写一个小函数,用来统计指定目录中文件大小,我了个去,动手吧,还好有点小基础,一会就完工了,哈哈。代码在下面咯。 

  1. <?   
  2. /** 
  3.   统计目录文件大小的函数 
  4.   @author xfcode 
  5.   @link http://www.jbxue.com 
  6. */  
  7.  function dirsize($dir)  
  8.  {  
  9.    @$dh = opendir($dir);  
  10.    $size = 0;  
  11.    while ($file = @readdir($dh))  
  12.   {  
  13.     if ($file != "." and $file != "..")  
  14.    {  
  15.      $path = $dir."/".$file;  
  16.       if (is_dir($path))  
  17.      {  
  18.        $size += dirsize($path);  
  19.       }  
  20.      elseif (is_file($path))  
  21.      {  
  22.        $size += filesize($path);  
  23.       }  
  24.     }  
  25.    }  
  26.   @closedir($dh);  
  27.   return $size;  
  28.  }  
  29. //function end   
  30.   
  31. //eg:  
  32.  $dir_path = "./my_files";  
  33.  $dir_size = dirsize($dir_path);  
  34.  $dir_size = $dir_size/1024/1024;  
  35.  echo $dir_size."MB";  
  36.  ?>  

这个函数可以递归遍历目录中的所有文件,并计算以MB为单位的文件总大小。 
新手出招,大佬们见笑了。

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。