使用filesize()函数命令实现文件大小的统计,要求:1,以GB、MB、KB、B中的一个输出;2.数量级必须大于1小于1024,并保留两位小数;
开始动工:
<BR>$len = filesize("1.rmvb"); <BR>$i=4; <BR>while($i){ <BR>i<em style="color:transparent">本文来源[email protected]搞@^&代*@码)网9</em><strong>搞代gaodaima码</strong>f(($out=$len/pow(1024,$i))>1.0||$i==1){ <BR>switch($i){ <BR>case 4: {printf("%.2f TB",$out);break;} <BR>case 3: {printf("%.2f GB",$out);break;} <BR>case 2: {printf("%.2f MB",$out);break;} <BR>case 1: {printf("%.2f KB",$out);break;} <BR>} <BR>break; <BR>} <BR>$i--; <BR>} <BR>
演示效果:
view sourceprint?1.85GB
2.70GB
得意间,上PHP官网的PHP教程上看,结果找到了一个更简单更有效的方法(So Peifu)
代码如下:
<BR>function format_bytes($size) { <BR>$units = array(' B', ' KB', ' MB', ' GB', ' TB'); <BR>for ($i = 0; $size >= 1024 && $i < 4; $i++) $size /= 1024; <BR>return round($size, 2).$units[$i]; <BR>} <BR>
演示效果:
1.85GB
2.7GB
当然还有更多的做法,但这种方法是应该是最简单的,最快的了吧,相信你也有别的方法,期待你的分享!