PHP – 如何使用 bccomp() 函数比较两个任意精度的数字?

在 PHP 中,bccomp()函数用于比较两个任意数字。该bccomp()函数将两个任意精度的数字作为字符串,并在比较两个数字后将输出作为整数。

语法

int bccomp($left_string1, $right_string1, $scaleval)

参数

bccomp()函数接受三个不同的参数 - $left_string1$right_string2$scaleval

  • $left_string1−它代表我们要进行比较的两个给定数字之一的左操作数,它是一个字符串类型参数。

  • $right_string2−它代表我们要进行比较的两个给定数字之一的右操作数,它是一个字符串类型参数。

  • $scaleval-它返回将在comparison.it整数类型参数中使用的小数位后的位数,默认值为零。

返回值

bccomp() 函数返回两个数字$left_string1$right_string2的比较的整数值。

  • 如果$left_string1数字大于$right_string2数字,则返回1

  • 如果$left_string1数字小于$right_string2数字,则返回-1

  • 如果两个给定的数字相等,则bccomp()函数返回0

示例 1-bccomp()使用相等参数的 PHP 函数

<?php
   // 输入两个数字
   $left_string1 = "3.12";
   $right_string2 = "3";

   // 计算两者的比较
   //没有刻度值的数字
   $result = bccomp($left_string1, $right_string2);

   //使用相等的参数
   echo "结果是: ", $result;
?>
输出结果
结果是: 0

上面的程序返回 0,因为使用了相等的参数而不使用比例值。

示例 2

<?php
   // 输入两个数字
   $left_string1 = "30.12"; // left value > right value
   $right_string2 = "3";

   //使用的比例值二
   $scaleval = 2;

   // 计算两者的比较
   //没有刻度值的数字
   $result = bccomp($left_string1, $right_string2);

   //使用相等的参数
   echo "输出是: ", $result;
?>
输出结果
输出是: 1

它返回 1,因为 Left 值大于 Right 值。

示例 3

<?php
   // 输入两个数字
   $left_string1 = "30.12";
   $right_string2 = "35"; // Right value > Left value

   //使用的比例值二
   $scaleval = 2;

   // 计算两者的比较
   //没有刻度值的数字
   $result = bccomp($left_string1, $right_string2);

   //使用相等的参数
   echo $result;
?>
输出结果
-1

它返回 -1,因为 Right 值大于 Left 值。

猜你喜欢