ここに要約:0と仮定し、それを出力php float数学演算のバグ?
演算結果の話
$a = 213480.7-190.46;
exit($a-213290.24);
# 2.9103830456734E-11
結果出力:
$b is : 213480.7
-190.46
$b is : 213290.24
は今のバランスが正しく見えます。しかし、使用時の比較演算子が...結果はここに 奇妙であることのvar_dumpで、
var_dump($b);
# float 213290.24
if ($b==213290.24) {
exit('same');
} elseif ($b>213290.24) {
exit('larger '.($b-213290.24));
} else {
exit('smaller '.($b-213290.24));
}
#larger 2.9103830456734E-11
誰がどのようにそれを解決するために私に言うことができるの比較結果??
投票停止?わかりません?私の問題ですか? –
私はdownvoteをしませんでしたが、すでにあなたの質問には浮動小数点の精度で答えました。 – deceze
私の問題を特定してくれてありがとう。解決策はありませんか? –