PHP – 如何使用 bcmod() 函数获取任意精度数的模数?

在 PHP 中,bcmod()数学函数用于计算任意精度数的模数。该bcmod()函数将任意精度数字作为字符串,并在将结果缩放到确定的精度后,将结果作为数字的模数给出。或者,我们可以说,它分裂后得到的余数string_num1通过string_num2。除非string_num2为 0,否则结果与string_num1 的符号相同。

语法

bcmod(string_$num1, string_$num2, [, int $scale=0])

或者,

bcmod(string $dividend, string $divisor[, int $scale=0])

-上述语法将得到除以剩余$string_num1$string_num2。除非string_num2为 0,否则结果与string_num1 的符号相同。

参数

bcmod()函数接受两个不同的参数,$dividend  $modulus。

  • $dividend-它表示除以给定模值 $modulus 的被除数,它是字符串类型参数。

  • $modulus- 字符串类型参数,用于表示模数。

返回值

bcmod()当被除数除以模数时,该函数返回余数。如果模数为 0,则该函数返回 null。

示例 1 -bcmod()不使用 scale 参数的 PHP 函数。

<?php
   // 输入任意精度的数字
   $dividend = "25.666";
   $modulus = "7";

   // 计算模数
   $result = bcmod($dividend, $modulus);
   echo "不使用比例值的输出: ", $result;
?>
输出结果
不使用比例值的输出: 4

示例 2 -bcmod()使用 scale 参数的 PHP 函数

现在,我们将采用比例值为 4 的相同输入值并检查输出。

<?php
   // 输入任意精度的数字
   $dividend = "25.666";
   $modulus = "7";

   //使用比例值 4
   $scaleVal =4;

   // 计算模数
   $result = bcmod($dividend, $modulus, $scaleVal);
   echo "带刻度值的输出: ", $result;
?>
输出结果
带刻度值的输出: 4.6660

示例 3

<?php
   bcscale(1);

   //0.5 自 PHP 7.2.0 起;0 以前
   echo bcmod('5.7', '1.3');
?>
输出结果
0.5

注意- 比例参数是从 PHP 7.2.0 版本添加的。

猜你喜欢