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

相关推荐
Kiyra5 分钟前
LinkedHashMap 源码阅读
java·开发语言·网络·人工智能·安全·阿里云·云计算
沐知全栈开发12 分钟前
Python3 日期和时间处理详解
开发语言
老王熬夜敲代码16 分钟前
C++模版元编程2
开发语言·c++
2501_9167665423 分钟前
【Java】HashMap集合实现类
java·开发语言
海棠AI实验室26 分钟前
Python 学习路线图:从 0 到 1 的最短闭环
开发语言·python·学习
Macbethad29 分钟前
技术报告:加密算法实现与性能优化研究
开发语言
玄同76529 分钟前
Python 函数:LLM 通用逻辑的封装与复用
开发语言·人工智能·python·深度学习·语言模型·自然语言处理
lkbhua莱克瓦2435 分钟前
基础-事务
开发语言·数据库·笔记·mysql·事务
xxxmine37 分钟前
ConcurrentHashMap 和 Hashtable 的区别详解
java·开发语言
阿猿收手吧!44 分钟前
【C++】brpc与grpc对比
开发语言·c++