brianium / nomnom
PHP 5.3+ 的简单文件大小转换
v1.1.1
2014-10-28 14:45 UTC
Requires
- ext-bcmath: *
Requires (Dev)
- phpunit/phpunit: 3.7.*
This package is auto-updated.
Last update: 2024-08-23 01:38:26 UTC
README
明白了吗?字节?比特?
Nomnom 用于处理 PHP 5.3+ 的文件大小转换。它处理二进制(基2)和公制(基10)转换。它提供了一个简单的接口,用于在任意相似基数之间转换大小!
使用方法
使用一个“开始”值构造 Nomnom 对象,该值将被转换。该对象上定义了两个方法:`from` 和 `to`。每个方法都接受一个用于转换的公制或二进制单位。
`to` 方法接受一个可选的 `precision` 值,以指定结果中要保留的十进制位数。
$nomnom = new Nomnom(1440000); //metric conversion to 1.44 $mb = $nomnom->from('B')->to('MB', 2); $nomnom = new Nomnom(1024); //binary conversion to 1 $kb = $nomnom->from('KiB')->to('MiB'); //convert a file size $filesize = new Filesize('/path/to/file.txt'); $mb = $filesize->to('MB');
作为便利,Nomnom 提供了一个名为 `nom` 的工厂方法和公制和二进制单位的常量。
//returns 1.44 Nomnom::nom(1440000)->from(Nomnom::BYTES)->to(Nomnom::MB, 2); //factory for Filesize Nomnom::file('/path/to/file.txt')->to(Nomnom::MB);
注意
'B' 在十进制或二进制基数下都指字节。
Nomnom 如果 `from` 和 `to` 方法包含不同基数的单位将抛出 `ConversionException`,即不允许 $nomnom->from('KiB')->to('MB');
Nomnom 需要安装 bcmath 扩展以处理更高精度。
测试
要运行测试,请确保已使用 composer install --dev
安装了依赖项,然后运行
vendor/bin/phpunit test/