php实现将字节转为KB、MB、GB、TB的方法
墨初 编程开发 1760阅读
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