allanmcarvalho / numerable
这是我创建的numerable包
1.3.1
2024-03-12 18:20 UTC
Requires
- php: ^8.1
- ext-intl: *
- illuminate/contracts: ^10.0|^11.0
- spatie/laravel-package-tools: ^1.14.0
Requires (Dev)
- laravel/pint: ^1.0
- nunomaduro/collision: ^7.8|^8.0
- orchestra/testbench: ^8.8|^9.0
- pestphp/pest: ^2.20
- pestphp/pest-plugin-arch: ^2.0
- pestphp/pest-plugin-laravel: ^2.0
- spatie/laravel-ray: ^1.26
README
此包提供类似于Laravel字符串工具类类的解决方案。使用它,您可以在数字上执行一些酷炫的操作,如断言、修改、数学运算、格式化和其他操作。
安装
您可以通过composer安装此包
composer require allanmcarvalho/numerable
基本用法
Numerable类似于Laravel字符串工具类。您可以使用Helper类或从numerable获取实例。
use Numerable\Numerable; use Numerable\Number; Number::add(2, 4, 6); // 12 Number::equal(2.0, 2); // true Number::equal(2.0, 2, strict: true); // false Number::divide(100, 2); // 50 Number::gt(10, 11); // false Number::gte(11.0, 11); // true Number::lt(10, 11); // true Number::lte(11.0, 11); // true Number::multiply(2, 10, 5); // 100 Number::parse('21.32%'); // 21.32 Number::sub(20, 4, 1); // 15 Number::toCurrency(213.21); // $213.21 Number::toFloat(1_000); // 1000.0 Number::toInteger(23.21); // 23 Number::toOrdinal(1); // 1st Number::toPercentage(0.52, precision: 0); // 52% Number::toReadableSize(1024 * 1024 * 512); // 512MB //or $number = Number::from(10) ->add(2) // now is 12 ->divide(2.5) // now is 4.8 ->multiplyBy(4) // now is 19.2 ->sub(4); // now is 15.2 //or $number = num(10) ->add(2) // now is 12 ->divide(2.5) // now is 4.8 ->multiplyBy(4) // now is 19.2 ->sub(4); // now is 15.2 $number->equal(15.10); // false $number->gt(10); // true $number->gte(18); // false $number->lt(10); // false $number->lte(18); // true $number->toCurrency(); // $15.20 $number->toCurrency('BRL', 'pt_BR'); // R$15,20 $number->toFloat(); // 15.2 $number->toFormat(places: 0, suffix: ' oranges'); // 15 oranges $number->toInteger(); // 15 $number->toOrdinal(); // 15th $number->toPercentage(sourceHumanized: true); // 15.00% $number->toReadableSize(short: false); // 15.2 bytes
可用方法
- abs - 获取绝对值。既可用作静态方法,也可用作实例方法。
- add - 添加数字。既可用作静态方法,也可用作实例方法。
- asHumanPercentage - 将数字格式化为人类可读百分比。仅作为实例方法可用。
- asFractionPercentage - 将数字格式化为分数百分比。仅作为实例方法可用。
- equal - 比较数字。既可用作静态方法,也可用作实例方法。
- diff - 获取数字之间的差异。既可用作静态方法,也可用作实例方法。
- divide - 除以数字。既可用作静态方法,也可用作实例方法。
- divideBy - 将实例值除以除数。仅作为实例方法可用。
- gt - 检查数字是否大于另一个数字。既可用作静态方法,也可用作实例方法。
- gte - 检查数字是否大于或等于另一个数字。既可用作静态方法,也可用作实例方法。
- isEven - 检查数字是否为偶数。既可用作静态方法,也可用作实例方法。
- isFloat - 检查数字是否为浮点数。既可用作静态方法,也可用作实例方法。
- isInteger - 检查数字是否为整数。既可用作静态方法,也可用作实例方法。
- isMultipleOf - 检查数字是否是另一个数字的倍数。既可用作静态方法,也可用作实例方法。
- isNegative - 检查数字是否为负数。既可用作静态方法,也可用作实例方法。
- isOdd - 检查数字是否为奇数。既可用作静态方法,也可用作实例方法。
- isPositive - 检查数字是否为正数。既可用作静态方法,也可用作实例方法。
- lt - 检查数字是否小于另一个数字。既可用作静态方法,也可用作实例方法。
- lte - 检查数字是否小于或等于另一个数字。既可用作静态方法,也可用作实例方法。
- multiply - 乘以数字。仅作为静态方法可用。
- multiplyBy - 将数字乘以另一个数字。仅作为实例方法可用。
- parse - 将字符串解析为数字。仅作为静态方法可用。
- round - 四舍五入数字。既可用作静态方法,也可用作实例方法。
- roundAsMultipleOf - 将数字四舍五入为另一个数字的倍数。既可用作静态方法,也可用作实例方法。
- sub - 减去数字。既可用作静态方法,也可用作实例方法。
- takeAPart - 获取数字的一部分。既可用作静态方法,也可用作实例方法。
- toCurrency - 将数字格式化为货币。既可用作静态方法,也可用作实例方法。
- toFloat - 将数字格式化为浮点数。既可用作静态方法,也可用作实例方法。
- toFormatted - 将数字格式化为格式化的字符串。既可用作静态方法,也可用作实例方法。
- toInteger - 将数字格式化为整数。既可用作静态方法,也可用作实例方法。
- toOrdinal - 将数字格式化为序数。作为静态方法和实例方法可用。
- toPercentage - 将数字格式化为百分比。作为静态方法和实例方法可用。
- variation - 获取数字之间的变化。作为静态方法可用。
- variationFrom - 从基数字获取变化。作为实例方法可用。
- variationTo - 到基数字的变化。作为实例方法可用。
测试
composer test
变更日志
请参阅变更日志,获取最近更改的更多信息。
贡献
请参阅贡献指南以获取详细信息。
安全漏洞
请查阅我们的安全策略了解如何报告安全漏洞。
鸣谢
许可协议
MIT 许可协议 (MIT)。请参阅许可文件获取更多信息。