都return了就不要global引用变量了吧,记得手册说global有意外行为
function dirSize($path){
$handle=opendir($path);
while(($item=readdir($handle))!==false){
if($item!="."&&$item!=".."){
if(is_dir($path."/".$item)){
$func=__FUNCTION__;
$sum+=$func($path."/".$item);
} else if (is_file($path."/".$item)){
$sum+=filesize($path."/".$item);
}
}
}
closedir($handle);
return $sum;
}