方法很簡單,這裡就不多廢話了,直接奉上代碼:
復制代碼 代碼如下:
protected function dir_size($dir){
$dh = opendir($dir); //打開目錄,返回一個目錄流
$size = 0; //初始大小為0
while(false !== ($file = @readdir($dh))){ //循環讀取目錄下的文件
if($file!='.' and $file!='..'){
$path = $dir.'/'.$file; //設置目錄,用於含有子目錄的情況
if(is_dir($path)){
$size += $this->dir_size($path); //遞歸調用,計算目錄大小
}elseif(is_file($path)){
$size += filesize($path); //計算文件大小
}
}
}
closedir($dh); //關閉目錄流
return $size; //返回大小
}