pleets / units-of-measurement
PHP 单位测量
v0.2.0
2021-07-23 02:28 UTC
Requires
- myclabs/php-enum: ^1.7
Requires (Dev)
- phpunit/phpunit: ^9.3
- squizlabs/php_codesniffer: ^3.5
This package is auto-updated.
Last update: 2024-09-23 09:19:08 UTC
README
此项目收集了一些单位测量值,并封装在简单的常量类中。添加了一些行为来更舒适地处理和交互。
在本版本中,实现了以下单位
- 时间(s, m, h, ...)
- 信息(B, KB, MB, ...)
安装
使用以下命令安装此库
composer require pleets/units-of-measurement
使用方法
显示单位和符号
您可以按照以下方式获取单位测量值的名称
use Pleets\Units\Symbols\TimeSymbol; use Pleets\Units\Units\TimeUnit; use Pleets\Units\Symbols\InformationSymbol; use Pleets\Units\Units\InformationUnit; // second $symbol = TimeUnit::fromSymbol(TimeSymbol::SECOND); // kilobyte $symbol = InformationUnit::fromSymbol(InformationSymbol::KILOBYTE);
同样地,您可以按照以下方式获取单位测量值的符号
use Pleets\Units\Symbols\TimeSymbol; use Pleets\Units\Units\TimeUnit; use Pleets\Units\Symbols\InformationSymbol; use Pleets\Units\Units\InformationUnit; // s $symbol = TimeSymbol::fromUnit(TimeUnit::SECOND); // KB $symbol = InformationSymbol::fromUnit(InformationUnit::KILOBYTE);
分组单位和符号
您可以根据需要按以下方式分组单位。
use Pleets\Units\Units\TimeUnit; use Pleets\Units\Units\Sets\TimeUnitSet; $timeSet = new TimeUnitSet(); $timeSet->addUnit(TimeUnit::MINUTE); $timeSet->addUnit(TimeUnit::HOUR); // ['minute', 'hour'] $units = $timeSet->toArray();
同样地,您可以根据需要按以下方式分组符号。
use Pleets\Units\Symbols\TimeSymbol; use Pleets\Units\Symbols\Sets\TimeSymbolSet; $timeSet = new TimeSymbolSet(); $timeSet->addSymbol(TimeSymbol::MINUTE); $timeSet->addSymbol(TimeSymbol::HOUR); // ['min', 'h'] $symbols = $timeSet->toArray();
转换
您可以使用每个单位的主类在单位之间进行转换。
use Pleets\Units\Time; $time = Time::fromUnit('minute', 5); // 300s $time->toMinutes()->toString(); // 300 seconds $time->toString(false);