早上刚到公司,头告诉我,抓紧写一个小函数,用来统计指定目录中文件大小,我了个去,动手吧,还好有点小基础,一会就完工了,哈哈。代码在下面咯。
这个函数可以递归遍历目录中的所有文件,并计算以mb为单位的文件总大小。
下面我们再来看个代码
.$filename.===.date(y-m-d h:i:s,filectime($file)).==.filetype($file).==.tosize(dirsize($file)).
; } else{ echo .$filename.=====.date(y-m-d h:i:s,filectime($file)).====.filetype($file).====.tosize(filesize($file)).
; } } } closedir($dir); #把文件或目录的大小转化为容易读的方式 function tosize($size){ $dw; #指定文件或目录统计的单位方式 if($size>pow(2,30)){ $dw=gb; $size=round($size/pow(2,30),2); } else if($size>pow(2,20)){ $dw=mb; $size=round($size/pow(2,20),2); } else if($size>pow(2,10)){ $dw=kb; $size=round($size/pow(2,10),2); } else { $dw=bytes; } return $size.$dw; } #利用递归的方式统计目录的大小 function dirsize($dirname){ $dirsize=0; $dir=opendir($dirname); while($filename=readdir($dir)){ $file=$dirname./.$filename; if($filename!=. && $filename!=..){ //一定要进行判断,否则会出现错误的 if(is_dir($file)){ $dirsize+=dirsize($file); } else{ $dirsize+=filesize($file); } } } closedir($dir); return $dirsize; }?>
以上就介绍了php实现统计目录文件大小的函数,包括了方面的内容,希望对php教程有兴趣的朋友有所帮助。