php如何对比浮点数大小(bccomp函数)

第一部分,常规例子:

例1:左边比右边小,结果:-1

php 复制代码
//示例,左边比右边小返回值:-1
$price1 = 2.14;
$price2 = 3.14;
$result = bccomp($price1, $price2, 2);
echo '对比结果:'.$result;//对比结果:-1

例2:左边与右边相等返回:0

php 复制代码
//示例,左边与右边相等
$price1 = 3.14;
$price2 = 3.14;
$result = bccomp($price1, $price2, 2);
echo '对比结果:'.$result;//对比结果:0

例3:左边比右边大,结果:1

php 复制代码
//示例,左边比右边大返回值
$price1 = 3.14;
$price2 = 2.14;
$result = bccomp($price1, $price2, 2);
echo '对比结果:'.$result;//对比结果:1

第二部分,知识点:

bccomp 比较两个任意精度的数字(PHP 4, PHP 5, PHP 7, PHP 8)

php 复制代码
bccomp(string $num1, string $num2, ?int $scale = null): int

参数说明:

num1:左边的运算数,是一个字符串。

num2:右边的运算数,是一个字符串。

scale:可选的 scale 参数被用作设置指示数字, 在使用来作比较的小数点部分。

返回值:

  • 两个数相等时返回 0;
  • num1num2 大时返回 1;
  • 其他则返回 -1;

官网示例:

php 复制代码
<?php

echo bccomp('1', '2') . "\n"; // -1
echo bccomp('1.00001', '1', 3); // 0
echo bccomp('1.00001', '1', 5); // 1

?>

PHP: bccomp - Manual

相关推荐
网安INF7 分钟前
RSA加密算法:非对称密码学的基石
java·开发语言·密码学
明月*清风7 分钟前
c++ —— 内存管理
开发语言·c++
蔡蓝12 分钟前
设计模式-观察着模式
java·开发语言·设计模式
西北大程序猿1 小时前
单例模式与锁(死锁)
linux·开发语言·c++·单例模式
你不是我我1 小时前
【Java开发日记】说一说 SpringBoot 中 CommandLineRunner
java·开发语言·spring boot
心扬1 小时前
python网络编程
开发语言·网络·python·tcp/ip
qq_454175791 小时前
c++学习-this指针
开发语言·c++·学习
尘浮7282 小时前
60天python训练计划----day45
开发语言·python
sss191s2 小时前
校招 java 面试基础题目及解析
java·开发语言·面试
sduwcgg2 小时前
python的numpy的MKL加速
开发语言·python·numpy