범용 바이트 단위 변환 기능
풀어 주다: 2016-07-25 08:49:50
容量单位计算,支持定义小数保留长度;定义起始和目标单位,或按1024自动进位
- class Util {
-
- /**
- * 容量单位计算,支持定义小数保留长度;定义起始和目标单位,或按1024自动进位
- *
- * @param int $size,容量计数
- * @param type $unit,容量计数单位,默认为字节
- * @param type $decimals,小数点后保留的位数,默认保留一位
- * @param type $targetUnit,转换的目标单位,默认自动进位
- * @return type 返回符合要求的带单位结果
- */
- static function fileSizeConv($size, $unit = 'B', $decimals = 1, $targetUnit = 'auto') {
- $units = array('B', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB');
- $theUnit = array_search(strtoupper($unit), $units); //初始单位是哪个
- //判断是否自动计算,
- if ($targetUnit != 'auto')
- $targetUnit = array_search(strtoupper($targetUnit), $units);
- //循环计算
- while ($size >= 1024) {
- $size/=1024;
- $theUnit ;
- if ($theUnit == $targetUnit)//已符合给定则退出循环吧!
- break;
- }
- return sprintf("%1$.{$decimals}f", $size) . $units[$theUnit];
- }
-
- }
复制代码
- echo Util::fileSizeConv(6461310554654);
-
- 结果:5.9TB
复制代码
|
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
-
2024-10-22 09:46:29
-
2024-10-13 13:53:41
-
2024-10-12 12:15:51
-
2024-10-11 22:47:31
-
2024-10-11 19:36:51
-
2024-10-11 15:50:41
-
2024-10-11 15:07:41
-
2024-10-11 14:21:21
-
2024-10-11 12:59:11
-
2024-10-11 12:17:31