PHPの浮動小数点数の計算比較及び整数の不正確な解決方法

607 ワード

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の浮動小数点数の計算比較と整数の不正確な解決方法である.