/** |
* 计算目录以及子目录所有文件的大小 |
* |
* @param unknown $dir 目录 |
* @return number |
*/ |
function dirsize( $dir ){ |
$dh = opendir( $dir ); |
$size = 0; |
while ( $file = readdir( $dh )){ |
if ( $file != '.' and $file != '..' ){ // 忽略当前目录和返回上一层 |
$path = $dir . "/" . $file ; |
if (@ is_dir ( $path )){ |
$size += dirsize( $path ); // 递归计算子目录大小 |
} else { |
$size += filesize ( $path ); |
} |
} |
} |
@ closedir ( $dh ); |
return $size ; |
} |