<?php
function dirSize($directoy) {
        $dir_size=0;
if($dir_handle=@opendir($directory)) {
while($filename=readdir($dir_handle)) {
   if($filename!="." && $filename!="..") {
   $subFile=$directory."/".$filename;
   if(is_dir($subFile))
   $dir_size+=dirSize($subFile);
   if(is_file($subFile))
   $dir_size+=filesize($subFile);
   
       }      } closedir($dir_handle);
return $dir_size;
}}
$dir_size=dirSize("abc");//传入文件名
echo round($dir_size/pow(1024,1),2)."KB";?>

解决方案 »

  1.   

    function dirSize($directory) {
      $dir_size=0;
      if($dir_handle=@opendir($directory)) {
        while($filename=readdir($dir_handle)) {
          if($filename!="." && $filename!="..") {
            $subFile=$directory."/".$filename;
            if(is_dir($subFile))
              $dir_size+=dirSize($subFile);
            if(is_file($subFile))
              $dir_size+=filesize($subFile);
          }   
        }
        closedir($dir_handle);
      }
      return $dir_size;
    }有几处写错了,自己对比一下
      

  2.   

    dirSize($directoy) {
      $dir_size=0;
    if($dir_handle=@opendir($directory)) {
    $directoy    tory  仔细看