标签: php
$fooValue = 100.68; $cowValue = 100.67; $diffValue = $fooValue - $cowValue; if($diffValue <= 0.01) { echo("success"); } else { echo("error"); }
这将显示“错误”。
我知道在Java中做什么。但是我不擅长PHP,特别是用这个计算东西。
请帮帮我。我的意思是如何成功?
答案 0 :(得分:6)
Float是一种不精确的数据类型(因为所有的浮点数据类型都是),因为在转换为二进制数据时可能会失去精度。这就是为什么在需要高(精确)精度时不应该使用浮点运算的原因。
在PHP中,查看BC Math或GMP库。后者仅适用于整数,但它具有高性能,有时可以在不失去精度的情况下转换为整数和从整数转换。