php统计文件大小,以GB、MB、KB、B输出
程序员文章站
2022-05-25 21:26:20
使用filesize()函数命令实现文件大小的统计,要求:1,以gb、mb、kb、b中的一个输出;2.数量级必须大于1小于1024,并保留两位小数; 开始动工: 复制代...
使用filesize()函数命令实现文件大小的统计,要求:1,以gb、mb、kb、b中的一个输出;2.数量级必须大于1小于1024,并保留两位小数;
开始动工:
$len = filesize("1.rmvb");
$i=4;
while($i){
if(($out=$len/pow(1024,$i))>1.0||$i==1){
switch($i){
case 4: {printf("%.2f tb",$out);break;}
case 3: {printf("%.2f gb",$out);break;}
case 2: {printf("%.2f mb",$out);break;}
case 1: {printf("%.2f kb",$out);break;}
}
break;
}
$i--;
}
演示效果:
view sourceprint?1.85gb
2.70gb
得意间,上php官网的php教程上看,结果找到了一个更简单更有效的方法(so peifu)
代码如下:
function format_bytes($size) {
$units = array(' b', ' kb', ' mb', ' gb', ' tb');
for ($i = 0; $size >= 1024 && $i < 4; $i++) $size /= 1024;
return round($size, 2).$units[$i];
}
演示效果:
1.85gb
2.7gb
当然还有更多的做法,但这种方法是应该是最简单的,最快的了吧,相信你也有别的方法,期待你的分享!
开始动工:
复制代码 代码如下:
$len = filesize("1.rmvb");
$i=4;
while($i){
if(($out=$len/pow(1024,$i))>1.0||$i==1){
switch($i){
case 4: {printf("%.2f tb",$out);break;}
case 3: {printf("%.2f gb",$out);break;}
case 2: {printf("%.2f mb",$out);break;}
case 1: {printf("%.2f kb",$out);break;}
}
break;
}
$i--;
}
演示效果:
view sourceprint?1.85gb
2.70gb
得意间,上php官网的php教程上看,结果找到了一个更简单更有效的方法(so peifu)
代码如下:
复制代码 代码如下:
function format_bytes($size) {
$units = array(' b', ' kb', ' mb', ' gb', ' tb');
for ($i = 0; $size >= 1024 && $i < 4; $i++) $size /= 1024;
return round($size, 2).$units[$i];
}
演示效果:
1.85gb
2.7gb
当然还有更多的做法,但这种方法是应该是最简单的,最快的了吧,相信你也有别的方法,期待你的分享!