PHP中两个float(浮点数)比较实例分析


Posted in PHP onSeptember 27, 2015

本文实例讲述了PHP中两个float(浮点数)比较方法。分享给大家供大家参考。具体如下:

最近在开发一个合同管理系统的时候,涉及到两个浮点数比较,算是把我郁闷惨了。
在N久以前,就不晓得从哪里听来的一个“不要用等号去比较浮点数”的“真理”,自己平时也在用,好像没有出现啥问题,可这次问题总算是来了。

<?php
$sum = "12300.00";
$a  = "10000.30";
$b  = "2000.30";
$c  =  "299.40";
$sum = (float) $sum;
$s = (float) ($a+$b+$c);
var_dump($sum, $s);
var_dump($sum==$s);

结果是:

float(12300)
float(12300)
bool(false)

后来才知道在PHP中,要比较两个浮点数的大小,可以用bccomp(参数1,参数2,小数位)来比较。

<?php
$sum = "12300.00";
$a  = "10000.30";
$b  = "2000.30";
$c  =  "299.40";
$sum = (float) $sum;
$s = (float) ($a+$b+$c);
var_dump($sum, $s);
var_dump(bccomp($sum,$s,2));

结果:

float(12300)
float(12300)
int(0) // 0表示两个浮点数值相等

bccomp函数具体用法可参考PHP手册。

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
php 购物车的例子
May 04 PHP
php 修改zen-cart下单和付款流程以防止漏单
Mar 08 PHP
PHP中运用jQuery的Ajax跨域调用实现代码
Feb 21 PHP
wamp安装后自定义配置的方法
Aug 23 PHP
微信公众平台开发实现2048游戏的方法
Apr 15 PHP
PHP 自动加载的简单实现(推荐)
Aug 12 PHP
php 使用html5实现多文件上传实例
Oct 24 PHP
php实现微信企业号支付个人的方法详解
Jul 26 PHP
实例介绍PHP中zip_open()函数用法
Feb 15 PHP
php字符串截取函数mb_substr用法实例分析
Jun 25 PHP
tp5递归 无限级分类详解
Oct 18 PHP
open_basedir restriction in effect. 原因与解决方法
Mar 14 PHP
用php代码限制国内IP访问我们网站
Sep 26 #PHP
十大使用PHP框架的理由
Sep 26 #PHP
PHP弹出对话框技巧详细解读
Sep 26 #PHP
ThinkPHP2.x防范XSS跨站攻击的方法
Sep 25 #PHP
ThinkPHP在Cli模式下使用模板引擎的方法
Sep 25 #PHP
腾讯CMEM的PHP扩展编译安装方法
Sep 25 #PHP
PHP生成随机字符串(3种方法)
Sep 25 #PHP
You might like
php中常用编辑器推荐
2007/01/02 PHP
收集的PHP中与数组相关的函数
2007/03/22 PHP
php中{}大括号是什么意思
2013/12/01 PHP
php 模拟 asp.net webFrom 按钮提交事件的思路及代码
2013/12/02 PHP
php查看网页源代码的方法
2015/03/13 PHP
我也种棵OO树JXTree[js+css+xml]
2007/04/02 Javascript
函数式 JavaScript(一)简介
2014/07/07 Javascript
avascript中的自执行匿名函数应用示例
2014/09/15 Javascript
javascript实现瀑布流自适应遇到的问题及解决方案
2015/01/28 Javascript
JavaScript中的Math.E属性使用详解
2015/06/12 Javascript
Node.js巧妙实现Web应用代码热更新
2015/10/22 Javascript
详解Angular开发中的登陆与身份验证
2016/07/27 Javascript
jQuery ajax实现省市县三级联动
2021/03/07 Javascript
bootstrap的常用组件和栅格式布局详解
2017/05/02 Javascript
分析JS单线程异步io回调的特性
2017/12/01 Javascript
vue中根据时间戳判断对应的时间(今天 昨天 前天)
2019/12/20 Javascript
JS实现TITLE悬停长久显示效果完整示例
2020/02/11 Javascript
JS数组的高级使用方法示例小结
2020/03/14 Javascript
js实现简单的贪吃蛇游戏
2020/04/23 Javascript
对Pytorch神经网络初始化kaiming分布详解
2019/08/18 Python
python 字符串常用函数详解
2019/09/11 Python
Python urlopen()和urlretrieve()用法解析
2020/01/07 Python
Python实现动态循环输出文字功能
2020/05/07 Python
Django之富文本(获取内容,设置内容方式)
2020/05/21 Python
css3.0 图形构成实例练习二
2013/03/19 HTML / CSS
英国独特的时尚和生活方式品牌:JOY
2018/03/17 全球购物
Currentbody法国:健康与美容高科技产品
2020/08/16 全球购物
计算机应用专业学生的自我评价分享
2013/11/03 职场文书
开办化妆品公司创业计划书
2013/12/26 职场文书
中秋手机店促销方案
2014/06/16 职场文书
大学运动会通讯稿
2015/07/18 职场文书
评奖评优个人先进事迹材料
2015/11/04 职场文书
《七月的天山》教学反思
2016/02/19 职场文书
2016年万圣节家长开放日活动总结
2016/04/05 职场文书
安装Ruby和 Rails的详细步骤
2022/04/19 Ruby
Python尝试实现蒙特卡罗模拟期权定价
2022/04/21 Python