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


Posted in PHP onMay 29, 2011

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

当然还有更多的做法,但这种方法是应该是最简单的,最快的了吧,相信你也有别的方法,期待你的分享!

PHP 相关文章推荐
PHP+javascript液晶时钟
Oct 09 PHP
手把手教你使用DedeCms V3的在线采集图文教程
Apr 03 PHP
解析coreseek for sphinx的使用
Jun 21 PHP
php+jQuery.uploadify实现文件上传教程
Dec 26 PHP
Laravel 5.0 发布 新版本特性详解
Feb 10 PHP
php+ajax实现的点击浏览量加1
Apr 16 PHP
linux下php上传文件注意事项
Jun 11 PHP
php删除一个路径下的所有文件夹和文件的方法
Feb 07 PHP
Laravel框架模板加载,分配变量及简单路由功能示例
Jun 11 PHP
PHP PDOStatement::execute讲解
Jan 31 PHP
php实现的数组转xml案例分析
Sep 28 PHP
PHP与SQL语句写一句话木马总结
Oct 11 PHP
PHP之数组学习
May 29 #PHP
PHP数组的交集array_intersect(),array_intersect_assoc(),array_inter_key()函数的小问题
May 29 #PHP
php连接数据库代码应用分析
May 29 #PHP
PHP文件上传原理简单分析
May 29 #PHP
php修改时间格式的代码
May 29 #PHP
PHP第一季视频教程(李炎恢+php100 不断更新)
May 29 #PHP
PHP获取文件绝对路径的代码(上一级目录)
May 29 #PHP
You might like
php的正则处理函数总结分析
2008/06/20 PHP
ThinkPHP与PHPExcel冲突解决方法
2011/08/08 PHP
详解yii2使用多个数据库的案例
2017/06/16 PHP
js 获取服务器控件值的代码
2010/03/05 Javascript
33个优秀的jQuery 教程分享(幻灯片、动画菜单)
2011/07/08 Javascript
Javascript继承机制的设计思想分享
2011/08/28 Javascript
javascript学习笔记(十三) js闭包介绍(转)
2012/06/20 Javascript
一个JavaScript的求爱小特效
2014/05/09 Javascript
javascript结合fileReader 实现上传图片
2015/01/30 Javascript
jQuery实现仿百度帖吧头部固定导航效果
2015/08/07 Javascript
jQuery滚动加载图片实现原理
2015/12/14 Javascript
详解axios在node.js中的post使用
2017/04/27 Javascript
vuex actions传递多参数的处理方法
2018/09/18 Javascript
如何解决vue在ios微信&quot;复制链接&quot;功能问题
2020/03/26 Javascript
python实现bitmap数据结构详解
2014/02/17 Python
Python的Django框架中模板碎片缓存简介
2015/07/24 Python
解决pandas无法在pycharm中使用plot()方法显示图像的问题
2018/05/24 Python
Numpy数据类型转换astype,dtype的方法
2018/06/09 Python
对python中的 os.mkdir和os.mkdirs详解
2018/10/16 Python
python 爬取学信网登录页面的例子
2019/08/13 Python
python使用yield压平嵌套字典的超简单方法
2019/11/02 Python
Python实现捕获异常发生的文件和具体行数
2020/04/25 Python
Python实现JS解密并爬取某音漫客网站
2020/10/23 Python
python中类与对象之间的关系详解
2020/12/16 Python
CSS3 旋转立方体问题详解
2020/01/09 HTML / CSS
详解HTML5中的拖放事件(Drag 和 drop)
2016/11/14 HTML / CSS
哥伦比亚最大的网上商店:Linio哥伦比亚
2016/09/25 全球购物
购买正版游戏和游戏激活码:Green Man Gaming
2019/11/06 全球购物
澳洲CFL商城:CHEMIST FOR LESS(中文)
2021/02/28 全球购物
linux系统都有哪些运行级别
2012/04/15 面试题
2014年应届大学生毕业自我鉴定
2014/01/31 职场文书
2014年毕业演讲稿范文
2014/05/13 职场文书
关于vue中如何监听数组变化
2021/04/28 Vue.js
SpringBoot读取Resource下文件的4种方法
2021/07/02 Java/Android
对讲机的最大通讯距离是多少
2022/02/18 无线电
Win11黑色桌面背景怎么办?Win11黑色壁纸解决方法汇总
2022/04/05 数码科技