牛骨文教育服务平台(让学习变的简单)
博文笔记

【PHP】统计文件大小,以GB、MB、KB、B输出

创建时间:2011-05-25 投稿人: 浏览次数:197

使用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--;
}

演示效果:

1.85GB
2.70GB

上PHP官网的PHP教程上看,结果找到了一个更简单更有效的方法

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.70GB

参考资料

统计文件大小,以GB、MB、KB、B输出

声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。