PHPの浮動小数点数の計算比較及び整数の不正確な解決方法
607 ワード
phpが面白い現象は、多くのプログラミング言語でこのような現象があるはずです.これはコンピュータ自体が浮動小数点数を認識する問題のためです.....コードで説明します.
もう一度注意したいのは、浮動小数点数を計算するときは、浮動小数点数を整形に変換しないでください.そうしないと、予測不可能なエラーが発生します.
以上のコードはPHPの浮動小数点数の計算比較と整数の不正確な解決方法である.
$f = 0.58;
var_dump(intval($f * 100 *100)); // 5799
var_dump((float)($f * 100 *100)); // 5800
echo (int)((0.1+0.7)*10); // 7
echo (float)((0.1+0.7)*10); // 8
もう一度注意したいのは、浮動小数点数を計算するときは、浮動小数点数を整形に変換しないでください.そうしないと、予測不可能なエラーが発生します.
以上のコードはPHPの浮動小数点数の計算比較と整数の不正確な解決方法である.