hi,欢迎访问本站!
当前位置: 首页编程开发正文

php实现将字节转为KB、MB、GB、TB的方法

墨初 编程开发 629阅读

php获取文件大小或统计某些内容的大小时,都会以字节为单位进行返回。但如果统计的内容或文件体积过大,以字节为单位返回大小的数字就显的太长,不利于阅读。但如果将以字节为单位的大小数量转为以KB,MB,GB以及TB为单位的话,就方便多了。下面博文73so博客就和大家说说,使用php脚本将字节转为KB,MB,GB的方法。

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

例1:

/**
 * @name 将字节转为 kb,mb,gb,tb单位
 * @param int $filesize 以字节为单位的大小
 * 
 * @return string 转换后的数据
 * @host https://www.73so.com
 */
function getSize($filesize) 
{
    if ($filesize >= 1073741824) {
        //转成GB
        $filesize = round($filesize / 1073741824 * 100) / 100 . ' GB';
    } elseif ($filesize >= 1048576) {
        //转成MB
        $filesize = round($filesize / 1048576 * 100) / 100 . ' MB';
    } elseif ($filesize >= 1024) {
        //转成KB
        $filesize = round($filesize / 1024 * 100) / 100 . ' KB';
    } else {
        //不转换直接输出
        $filesize = $filesize . ' 字节';
    }
    return $filesize;
}

echo getSize(10241024);
// 9.77 MB

例2:

/**
 * @name 将字节转为 kb,mb,gb,tb单位
 * @param int $size 以字节为单位的大小
 * 
 * @return string 转换后的数据
 * @host https://www.73so.com
 */
function formatBytes($size) {
    $units = [' B', ' KB', ' MB', ' GB', ' TB'];
    for ($i = 0; $size >= 1024 && $i < 4; $i++) $size /= 1024;
    return round($size, 2) . $units[$i];
}

echo formatBytes(31025855); 
// 29.59 MB
声明:无特别说明,转载请标明本文来源!
相关推荐