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