PHP 8.4.1 Released!

bcdivmod

(PHP 8 >= 8.4.0)

bcdivmodGet the quotient and modulus of an arbitrary precision number

说明

bcdivmod(string $num1, string $num2, ?int $scale = null): string

Get the quotient and remainder of dividing num1 by num2.

参数

num1
The dividend, as a string.
num2
The divisor, as a string.
scale

此可选参数用于设置结果中小数点后的小数位数。也可通过使用 bcscale() 来设置全局默认的小数位数,用于所有函数。如果未设置,则默认为 0

返回值

Returns an indexed array where the first element is the quotient as a string and the second element is the remainder as a string.

错误/异常

This function throws a ValueError in the following cases:

  • num1 or num2 is not a well-formed BCMath numeric string
  • scale is outside the valid range

This function throws a DivisionByZeroError exception if num2 is 0.

示例

示例 #1 bcdivmod() example

<?php
bcscale
(0);

[
$quot, $rem] = bcdivmod('5', '3');
echo
$quot; // 1
echo $rem; // 2

[$quot, $rem] = bcdivmod('5', '-3');
echo
$quot; // -1
echo $rem; // 2

[$quot, $rem] = bcdivmod('-5', '3');
echo
$quot; // -1
echo $rem; // -2

[$quot, $rem] = bcdivmod('-5', '-3');
echo
$quot; // 1
echo $rem; // -2
?>

示例 #2 bcdivmod() with decimals

<?php
[$quot, $rem] = bcdivmod('5.7', '1.3', 1);
echo
$quot; // 4
echo $rem; // 0.5
?>

参见

  • bcdiv() - 两个任意精度的数字除法计算
  • bcmod() - 任意精度数字取模
添加备注

用户贡献的备注

此页面尚无用户贡献的备注。
To Top