PHP实现字节数Byte转换为KB、MB、GB、TB的方法 原创

yipeiwu_com7年前PHP代码库

本文实例讲述了PHP实现字节数Byte转换为KB、MB、GB、TB的方法。分享给大家供大家参考,具体如下:

前面介绍了java实现字节数Byte转换为KB、MB、GB、TB的方法 ,这里改用PHP实现这一功能。代码非常简单:

<?php
function getFilesize($num){
   $p = 0;
   $format='bytes';
   if($num>0 && $num<1024){
     $p = 0;
     return number_format($num).' '.$format;
   }
   if($num>=1024 && $num<pow(1024, 2)){
     $p = 1;
     $format = 'KB';
  }
  if ($num>=pow(1024, 2) && $num<pow(1024, 3)) {
    $p = 2;
    $format = 'MB';
  }
  if ($num>=pow(1024, 3) && $num<pow(1024, 4)) {
    $p = 3;
    $format = 'GB';
  }
  if ($num>=pow(1024, 4) && $num<pow(1024, 5)) {
    $p = 3;
    $format = 'TB';
  }
  $num /= pow(1024, $p);
  return number_format($num, 3).' '.$format;
}
echo "来自【宜配屋www.yipeiwu.com】www.jb51.net的测试结果:<br/>";
echo getFilesize(200)."<br/>";
echo getFilesize(20000)."<br/>";
echo getFilesize(2000000)."<br/>";
echo getFilesize(200000000)."<br/>";
echo getFilesize(20000000000)."<br/>";
echo getFilesize(2000000000000)."<br/>";
?>

运行结果如下图:

PS:这里再为大家推荐几款相关在线工具供大家参考使用:

在线万能单位换算器flash版“数据存储”项即为本文所述单位换算):
http://tools.jb51.net/zhuanhuanqi/all_zhuanhuanqi

科学计算器在线使用_高级计算器在线计算:
http://tools.jb51.net/jisuanqi/jsqkexue

在线硬盘分区计算器:
http://tools.jb51.net/jisuanqi/onlinediskjsq

更多关于PHP相关内容感兴趣的读者可查看本站专题:《php字符串(string)用法总结》、《PHP数据结构与算法教程》、《php程序设计算法总结》、《PHP数组(Array)操作技巧大全》、《PHP常用遍历算法与技巧总结》及《PHP数学运算技巧总结

希望本文所述对大家PHP程序设计有所帮助。

相关文章

CodeIgniter图像处理类的深入解析

image.php 复制代码 代码如下:<?phpclass Image extends Controller {    function Image...

来自phpguru得Php Cache类源码

Cache的作用不用说大家都知道咯,这些天也面试了一些人,发现很多人框架用多了,基础都忘记了,你问一些事情,他总是说框架解决了,而根本不明白是怎么回事,所以也提醒大家应该注意平时基础知识...

浅谈php中fopen不能创建中文文件名文件的问题

之前网页的chartset用的是utf-8,文件也用utf-8,然后用fopen()创建一个中文文件名的文件时问题就出来了,文件名都是乱 码! 查看了很多文档试了不少方法都解决不了,本来...

2款PHP无限级分类实例代码

本文章总结了两款PHP无限级分类实现程序代码,有需要学习的朋友可参考一下。 主要思路:首先看第三行和第四行,父类ID(PARENTID)的值是1,表示属于id=1这个类的子类,而,一,二...

php利用smtp类实现电子邮件发送

php利用smtp类实现电子邮件发送

smtp类发送邮件的方法既简单又稳定,几行简单的配置就能发邮件,是不是很期待的试一试呢! 以下就是核心代码: <?php require_once "email.cl...