当前位置: 首页 > article >正文

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

第一部分,常规例子:

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

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

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

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

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

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

第二部分,知识点:

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

bccomp(string $num1, string $num2, ?int $scale = null): int

参数说明:

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

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

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

返回值:

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

官网示例:

<?php

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

?>

PHP: bccomp - Manual


http://www.kler.cn/news/150038.html

相关文章:

  • 代码的并发问题
  • ASCII sorting
  • (亲测有效)解决windows11无法使用1500000波特率的问题
  • RabbitMQ消息模型之发布订阅Publish-Subscribe
  • docker中安装mysql,远程连接
  • 基于docker的onlyoffice使用--运行JavaSpringExample
  • 你了解vue的diff算法吗?
  • go学习之文件操作与命令行参数
  • leetcode 283. 移动零
  • JavaScript基础知识总结
  • Java 关于批量插入遇到的问题 -sqlserver
  • 配置阿里云的yum仓库
  • qt-C++笔记之主线程中使用异步逻辑来处理ROS事件循环和Qt事件循环解决相互阻塞的问题
  • 数学加速器:Python numpy.add函数全解读
  • 基于单片机的肺活量检测系统(论文+源码)
  • 树与二叉树堆:堆的意义
  • SpringBoot整合EasyExcel实现复杂Excel表格的导入导出功能
  • DNS/ICMP协议、NAT技术
  • goweb入门教程
  • Python dns域名解析(dns.resolver)
  • 【LeetCode:1670. 设计前中后队列 | 数据结构设计】
  • spring-webflux的一些概念的理解
  • 【Rust】基本的语法概念
  • 唯创知音WT588F02B-8S语音芯片:灵活更换语音内容,降低开发成本与备货压力
  • python每日一题——12最小覆盖子串
  • GoLang切片
  • Leetcode算法系列| 1. 两数之和(四种解法)
  • OpenLDAP配置web管理界面PhpLDAPAdmin服务-centos9stream
  • Spring---对象的存储和读取
  • PyQt6库和工具库QTDesigner安装与配置