joaomfrebelo / decimal
用于处理十进制数字的PHP类
4.0.0
2021-12-17 12:08 UTC
Requires
- php: ^8.0
- ext-bcmath: *
Requires (Dev)
- jetbrains/phpstorm-attributes: ^1.0
- joaomfrebelo/enum: ^2.0
- phpstan/phpstan: ^0.12
- phpunit/phpunit: ^9.3
- squizlabs/php_codesniffer: ^3.5
README
Decimal是一个在PHP中处理十进制的库。这个库包含用于有符号和无符号十进制的类。
从版本4.0开始,round方法可以是高精度模式或标准模式,默认设置为标准模式。
标准模式使用精度后的第一个数字来四舍五入十进制数,高精度模式使用所有十进制数字。
示例
use Rebelo\Decimal\RoundMode; use Rebelo\Decimal\Decimal; $decimal = new Decimal(9.9, 4, new RoundMode(RoundMode::HALF_UP)); $result = $decimal->plus(new Decimal(0.1, 2)); $float = $result->valueOf(); // Simple initialization $decimal = new Decimal(9.9, 4); // Full initialization set the RoundMode and precion round mode $decimal = new Decimal(9.9, 4, new RoundMode(RoundMode::HALF_UP), true); // Difference between standard mode round precision and high precision // Standard mode new Decimal(12571.674647, 2, null, false); // will be round to 12571.67 // high precision mode new Decimal($value, 2, null, true); // will be12571.68
安装
通过Composer
$ composer require joaomfrebelo/Decimal
许可证
版权所有 (c) 2019 João M F Rebelo
特此授予任何人免费获得本软件及其相关文档副本(以下简称“软件”)的权利,以不受限制地处理该软件,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或出售软件副本,并允许软件的提供方执行上述操作,前提是遵守以下条件
上述版权声明和本许可声明应包含在软件的所有副本或实质性部分中。
软件按“原样”提供,不提供任何明示或暗示的保证,包括但不限于适销性、特定用途适用性和非侵权性保证。在任何情况下,作者或版权所有者均不对任何索赔、损害或其他责任负责,无论这些责任是基于合同、侵权或其他原因,无论这些责任是否源于、由或与软件或软件的使用或其他方式相关。