PHP – 如何使用 bcmul() 函数将两个任意精度的数字相乘?
phpserver side programmingprogramming更新于 2025/7/22 16:22:17
在 PHP 中,bcmul() 数学函数用于将一个任意精度的数字与另一个数字相乘。 bcmul() 函数接受两个任意精度的数字作为字符串,并将结果缩放到指定精度后,返回两个数字相乘的结果。
语法
string bcmul( $num_string1, $num_string2, $scaleVal)
参数
数学函数 bcmul() 接受三个不同的参数:$num_string1、$num_string2 和 $scaleVal。
$num_string1 - 表示左操作数,为字符串类型参数。
$num_string2 - 表示右操作数,为字符串类型参数。
$scaleVal - 这是一个可选的整数类型参数,用于设置结果输出中小数点后的位数。它返回默认值 0。
返回值
bcmul() 数学函数以字符串形式返回两个数字 $num_str1 和 num_str2 的乘积。
示例 1 - 不使用 $scaleVal 参数的 bcmul() PHP 函数
<?php // 用于演示 bcmul() 函数的 PHP 程序 // 使用任意精度的两个输入数字 $num_string1 = "10.5552"; $num_string2 = "3"; // 计算两个数字的和 // 不带 $scaleVal 参数 $result = bcmul($num_string1, $num_string2); echo "Output without scaleVal is: ", $result; ?>
输出
Output without scaleVal is: 31
如果没有 scaleVal 参数,小数点后的数字将被丢弃。
示例 2 - 使用 $scaleVal() 参数的 PHP 函数 bcmul()
在这里,我们将使用相同的输入值,并将小数位数设置为 4,并检查输出。
<?php // 用于演示 bcmul() 函数的 PHP 程序 // 使用任意精度的两个输入数字 $num_string1 = "10.5552"; $num_string2 = "3"; // 使用小数位数 4 $scaleVal = 4; // 计算两个不带 $scaleVal 参数的数字的和 $result = bcmul($num_string1, $num_string2, $scaleVal); echo "Output with scaleVal is:", $result; ?>
输出
Output with scaleVal is: 31.6656

