PHP – 如何使用 bcsub() 函数将一个任意精度的数字减去另一个任意精度的数字?

phpserver side programmingprogramming更新于 2025/7/22 15:22:17

在 PHP 中,bcsub() 数学函数用于将一个任意精度的数字减去另一个任意精度的数字。 bcsub() 函数接受两个任意精度的数字作为字符串,并将结果缩放到指定精度后,计算两个数字的差值。

语法

string bcsub ($num_str1, $num_str2, $scaleVal)

参数

bcsub() 数学函数接受三个不同的参数:$num_str1, $num_str2  和 $scaleVal

  • $num_str1 − 表示左操作数,是字符串类型参数。

  • $num_str2 − 表示右操作数,是字符串类型参数。

  • $scaleVal − 它是一个可选的整数类型参数,用于设置结果输出中小数点后的位数。默认返回零值。

返回值

bcadd() 数学函数返回两个数字 $num_str1  和  num_str2 的减法结果,并以字符串形式返回。

示例 1 - 不使用 $scaleVal 参数的 bcsub() PHP 函数

<?php
   // 用于演示 bcadd() 函数的 PHP 程序
   // 使用任意精度的两个输入数字
   $num_string1 = "10.555";
   $num_string2 = "3";

   // 计算两个数字的和
   // 不带 $scaleVal 参数
   $result = bcsub($num_string1, $num_string2);
   echo "不使用 scaleVal 参数的输出为: ", $result;
?>

输出

不使用 scaleVal 参数的输出为:7

如果没有 $scaleVal 参数,bcsub() 函数会在输出中舍弃小数点。

示例 2:使用 $scaleVal 参数的 − bcsub() PHP 函数

在本例中,我们将使用相同的输入值,但 scaleVal 为 3。因此,输出值将在小数点后显示 3 位数字。

<?php
   // 用于演示 bcsub() 函数的 PHP 程序
   // 使用任意精度的两个输入数字
   $num_string1 = "10.5552";
   $num_string2 = &"3";

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

   // 计算两个数字的和
   // 不带 $scaleVal 参数
   $result = bcsub($num_string1, $num_string2, $scaleVal);
   echo "使用 scaleVal 后的输出为: ", $result;
?>

输出

使用 scaleVal 后的输出为:7.555

相关文章