rych / bytesize
用于优雅地格式化文件大小的实用组件
v1.0.0
2014-04-04 18:06 UTC
Requires
- php: >=5.3.4
- ext-bcmath: *
Requires (Dev)
- phpunit/phpunit: 3.7.*
This package is auto-updated.
Last update: 2024-09-23 11:55:48 UTC
README
ByteSize 是一个用于以各种格式格式化文件大小的实用组件。
需求
- PHP 5.3+
- BCMath 扩展
安装
通过 Composer
$ composer require rych/bytesize
用法
基本用法非常简单。创建一个 Rych\ByteSize\ByteSize
实例并调用其 format()
方法。
<?php // Default formatter is metric (kilobyte = 1000 bytes) $bytesize = new \Rych\ByteSize\ByteSize; // Outputs 1.44MB echo $bytesize->format(1440000);
默认格式化器也可以自定义,使用 \Rych\ByteSize\Formatter\Metric
或 \Rych\ByteSize\Formatter\Binary
类。度量格式化器基于1000字节的千字节,并使用标准SI后缀(kB,MB,GB,TB等)。二进制格式化器基于1024字节的千字节,并使用标准的二进制后缀(KiB,MiB,GiB,TiB等)。两个格式化器在格式化输出中都使用默认的2位有效数字精度,但也可以更改到0-10范围内的任何数字。
<?php // Use the binary formatter with a default precision of 1 $formatter = new \Rych\ByteSize\Formatter\Binary; $formatter->setPrecision(1); $bytesize = new \Rych\ByteSize\ByteSize($formatter); // Outputs 1.4MiB echo $bytesize->format(1509949);
精度也可以通过调用时传递给 format()
方法的第二个参数来设置。
如果您不关心所有这些面向对象的东西,核心 \Rych\ByteSize
类还提供了两个静态方法: formatMetric()
和 formatBinary()
。方法签名与标准 format()
方法相同。
<?php use \Rych\ByteSize\ByteSize; // Static methods also work in a pinch echo ByteSize::formatMetric(1440000); // 1.44MB echo ByteSize::formatBinary(1509949); // 1.44MiB
测试
$ vendor/bin/phpunit -c phpunit.dist.xml
许可证
MIT 许可证(MIT)。有关更多信息,请参阅 许可证文件。