PHP中两个float(浮点数)比较的问题[转载]
来源:互联网 发布:手机 分镜头 软件 编辑:程序博客网 时间:2024/05/11 05:25
最近在开发一个合同管理系统的时候,涉及到两个浮点数比较,算是把我郁闷惨了。
在N久以前,就不晓得从哪里听来的一个“不要用等号去比较浮点数”的“真理”,自己平时也在用,好像没有出现啥问题,可这次问题总算是来了。
1
2
3
4
5
6
7
8
9
10
<?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
);
结果是:
1
2
3
float(12300)
float(12300)
bool(false)
后来才知道在PHP中,要比较两个浮点数的大小,可以用bccomp(参数1,参数2,小数位)来比较。
1
2
3
4
5
6
7
8
9
10
<?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));
结果:
1
2
3
float(12300)
float(12300)
int(0)
// 0表示两个浮点数值相等
0 0
- PHP中两个float(浮点数)比较的问题[转载]
- PHP Float 永远不要比较两个浮点数是否相等
- float浮点数比较问题
- java中浮点数的比较(double, float)
- 两个float数的比较大小以及浮点数是否和0相等
- php浮点数的比较
- php浮点数的比较
- 浮点数比较的问题
- 两个float数的比较大小
- 比较两个浮点数的大小
- 两个浮点数的比较:bccomp
- js中浮点数计算问题(php判断float同适用)
- PHP浮点数比较
- php浮点数的问题
- 关于JavaScript中浮点数比较的问题
- 刨根问底:C++中浮点型变量(float, double)的比较问题。
- 刨根问底:C++中浮点型变量(float, double)的比较问题。
- 两个浮点数相等比较
- 瞎扯扯
- TCP的链接,链接超时, 传输数据超时与重传数据
- 分布式系统
- 如何快速把关键字做到百度首页?
- 算法之旅,直奔<bitset>之五 count
- PHP中两个float(浮点数)比较的问题[转载]
- Leetcode Gray Code
- javascript 时间格式输出FormatDate函数
- webview与js交互
- 新概念英语第三册课文
- Linux 自检和 SystemTap
- 备忘录模式
- 黑马程序员:JAVA中代码顺序,静态块 静态变量,加载顺序!
- 二十大数据可视化工具点评