$fooValue = 100.68;
$cowValue = 100.67;
$diffValue = $fooValue - $cowValue;
if($diffValue <= 0.01) {
echo("success");
} else {
echo("error");
}
这将显示“错误”。
我知道如何在Java中处理,但我不擅长PHP,特别是涉及计算的部分。
请帮助我解决问题。我的意思是如何成功实现这个?
$fooValue = 100.68;
$cowValue = 100.67;
$diffValue = $fooValue - $cowValue;
if($diffValue <= 0.01) {
echo("success");
} else {
echo("error");
}
这将显示“错误”。
我知道如何在Java中处理,但我不擅长PHP,特别是涉及计算的部分。
请帮助我解决问题。我的意思是如何成功实现这个?
$fooValue
一定是最大值,请记得使用abs()
函数。然而,您的问题似乎在于epsilon取值过小,导致浮点数表示不正确,从而得到了错误的结果。 - jensgram$diffValue
等于0.010000000000005
,这不仅是 PHP 特有的。 - poke