用于统计文件夹的大小和文件,文件夹数量。传入文件夹的绝对路径
function addup_dir($dir_name){
// 初始化大小,文件数量,文件夹数量
$size=0;$dir=0;$file=0;
if ($handle = opendir($dir_name)){
while (false!==($item=readdir($handle))){
if ($item !='.' && $item !='..') {
if (is_dir("$dir_name/$item")) {
$data = $this->addup_dir("$dir_name/$item");
$size+=$data['size'];
$dir+=$data['dir'];
$file+=$data['file'];
$dir++;
}
else{
$size += filesize("$dir_name/$item");
$file++;
}
}
}
closedir( $handle );
}
return array('size'=>$size,'dir'=>$dir,'file'=>$file);
}
删除文件夹函数,传入绝对路径
function delete_dir( $dir_name ){
if ($handle = opendir($dir_name)){
$size = 0;
while (false!==($item=readdir($handle))){
if ($item !='.' && $item !='..') {
if ( is_dir("$dir_name/$item")) {
delete_dir("$dir_name/$item");
}
else{
$size += filesize("$dir_name/$item");
unlink("$dir_name/$item");
}
}
}
closedir( $handle );
if(rmdir($dir_name)){
return true;
};
}
}