您现在的位置是: 首页 > PHP PHP
PHP高精度计算函数
冬寂
2021-12-22 10:05:57
【PHP】
5155人已围观
PHP 为任意精度数学计算提供了二进制计算器(Binary Calculator),它支持任意大小和精度的数字,以字符串形式描述
bcadd — 加法
bccomp — 比较
bcdiv — 相除
bcmod — 求余数
bcmul — 乘法
bcpow — 次方
bcpowmod — 先次方然后求余数
bcscale — 给所有函数设置小数位精度
bcsqrt — 求平方根
bcsub — 减法
bccomp
(PHP 4, PHP 5, PHP 7, PHP 8)
bccomp — 比较两个任意精度的数字
说明
bccomp(string $num1, string $num2, ?int $scale = null): int
比较 num1 和 num2, 并且返回整型数字的结果。
参数
num1左边的运算数,是一个字符串。
num2右边的运算数,是一个字符串。
scale可选的
scale参数被用作设置指示数字, 在使用来作比较的小数点部分。
返回值
两个数相等时返回 0; num1 比 num2 大时返回 1; 其他则返回 -1。
更新日志
| 版本 | 说明 |
|---|---|
| 8.0.0 | 现在 scale 可以为 null。 |
范例
示例 #1 bccomp() 示例
<?php
echo bccomp('1', '2') . "\n"; // -1
echo bccomp('1.00001', '1', 3); // 0
echo bccomp('1.00001', '1', 5); // 1
?>
bcscale
(PHP 4, PHP 5, PHP 7, PHP 8)
bcscale — 设置/获取所有 bc math 函数的默认小数点保留位数
说明 ¶
bcscale(int $scale): int
设置所有 bc math 函数在未设定情况下的小数点保留位数。
bcscale(null $scale = null): int
获取当前的小数点保留位数。
参数 ¶
scale小数点保留位数。
返回值 ¶
设置的时候,返回之前的小数点保留位数。否则就是返回当前的位数。
更新日志 ¶
| 版本 | 说明 |
|---|---|
| 8.0.0 | 现在 scale 可以为 null。 |
| 7.3.0 | 现在 bcscale() 不仅可以设置,还可以获取当前的小数点保留位数。 用于设置的时候,现在会返回之前的位数。 之前 scale 是强制的参数, 且 bcscale() 总是返回 true。 |
范例 ¶
示例 #1 bcscale() 示例
<?php
// 默认小数点位数: 3
bcscale(3);
echo bcdiv('105', '6.55957'); // 16.007
// 不调用 bcscale() 也一样
echo bcdiv('105', '6.55957', 3); // 16.007
?>
相关文章
随机图文
-
量子力学1:诡秘之主
这是一个被我们之中最聪明的头脑探索了一百年的秘密。听说它的冰山一角,你就足以动容;稍微了解,你就会为之痴迷;深入钻研进去,你可能会陷入绝望,乃至于疯狂。 -
执行count(1)、count(*) 与 count(列名) 到底有什么区别?
执行count(1)、count(*) 与 count(列名) 到底有什么区别 -
对于deploy(https://deployer.org/)的原理和使用我有多个问题想问,我现在使用的版本是7.3接下来我会一个个问,你回答
deploy(https://deployer.org/) -
认真琢磨减肥这件事(一,认知与原动力)
第一, 减肥的动机,是为了健康,更是为了提高你的魅力,提高你的社会竞争力。第二, 减肥的实质,是改变生活方式,换一种新的人生。第三, 只有跟一群志同道合的人一起走,才能走得更远,最终减肥成功。
