(PHP 4, PHP 5, PHP 7, PHP 8)
bcadd — 两个任意精度数字的加法计算
说明 ¶bcadd(string $num1
, string $num2
, ?int $scale
= null
): string
对 num1
和 num2
求和。
num1
左操作数,字符串类型。
num2
右操作数,字符串类型。
scale
此可选参数用于设置结果中小数点后的小数位数。也可通过使用 bcscale() 来设置全局默认的小数位数,用于所有函数。如果未设置,则默认为 0
。
以字符串返回两个操作数求和之后的结果。
减法
bcsub
(PHP 4, PHP 5, PHP 7, PHP 8)
bcsub — 两个任意精度数字的减法
说明 ¶bcsub(string $num1
, string $num2
, ?int $scale
= null
): string
num1
减去 num2
。
num1
字符串类型的左操作数。
num2
字符串类型的右操作数。
scale
此可选参数用于设置结果中小数点后的小数位数。也可通过使用 bcscale() 来设置全局默认的小数位数,用于所有函数。如果未设置,则默认为 0
。
以 string 类型返回减法之后的结果。
$a = '1.234';
$b = '5';
echo bcsub($a, $b); // -3
echo bcsub($a, $b, 4); // -3.7660
乘法
bcmul
(PHP 4, PHP 5, PHP 7, PHP 8)
bcmul — 两个任意精度数字乘法计算
说明 ¶bcmul(string $num1
, string $num2
, ?int $scale
= null
): string
num1
乘以 num2
。
num1
字符串类型的左操作数。
num2
字符串类型的右操作数。
scale
此可选参数用于设置结果中小数点后的小数位数。也可通过使用 bcscale() 来设置全局默认的小数位数,用于所有函数。如果未设置,则默认为 0
。
返回字符串类型的结果。
除法
bcdiv
(PHP 4, PHP 5, PHP 7, PHP 8)
bcdiv — 两个任意精度的数字除法计算
说明 ¶bcdiv(string $num1
, string $num2
, ?int $scale
= null
): string
num1
除以 num2
。
num1
被除数,字符串类型。
num2
除数,字符串类型。
scale
此可选参数用于设置结果中小数点后的小数位数。也可通过使用 bcscale() 来设置全局默认的小数位数,用于所有函数。如果未设置,则默认为 0
。
返回字符串类型的结果。如果 num2
是 0
结果为 null
。
echo bcdiv('105', '6.55957', 3); // 16.007
乘方
bcpow
(PHP 4, PHP 5, PHP 7, PHP 8)
bcpow — 任意精度数字的乘方
说明 ¶bcpow(string $num
, string $exponent
, ?int $scale
= null
): string
num
的 exponent
次方运算。
num
string 类型的底数。
exponent
string 类型的指数。 如果指数不是整数,将被截断。 指数的有效范围取决于平台,但起码支持 -2147483648
到 2147483647
的范围。
scale
此可选参数用于设置结果中小数点后的小数位数。也可通过使用 bcscale() 来设置全局默认的小数位数,用于所有函数。如果未设置,则默认为 0
。
返回字符串类型的结果。
echo bcpow('4.2', '3', 2); // 74.08
精准比较
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。
echo bccomp('1', '2') . "\n"; // -1
echo bccomp('1.00001', '1', 3); // 0
echo bccomp('1.00001', '1', 5); // 1