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

yipeiwu_com6年前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程序设计有所帮助。

相关文章

PHP中ini_set与ini_get用法实例

本文实例讲述了PHP中ini_set与ini_get的用法。分享给大家供大家参考。具体如下: PHP ini_set函数。 PHP ini_set函数是设置选项中的值,在执行函数后生效,...

对squid中refresh_pattern的一些理解和建议

refresh_pattern的作用: 用于确定一个页面进入cache后,它在cache中停留的时间。refresh_pattern规则仅仅应用到没有明确过时期限的响应。原始服务器能使用...

Ajax PHP简单入门教程代码

首先我们来了解怎么在javascrīpt中创建这个对象: var xmlHttp = new XMLHttpRequest(); 这行简单的代码在...

PHP获取文件的MD5值并判断是否被修改的例子

由于需要判断上传的文件是否被修改过,需要记录上传文件的md5值,这里记录一下获取文件md5值的方法。 复制代码 代码如下: if(isset($_FILES['multimedia'])...

dedecms函数分享之获取某一栏目所有子栏目

以前从来没写过递归(其实想想,对算法完全没概念),刚好有这个需求,试着写了一下,发现也挺容易的,特别记录一下。 数据库是dedecms默认的,dede_arctype是保存栏目的表,re...