php下的浮点运算准不准
不准,php下的浮点运算存在误差。在PHP中,浮点数的精度有限;尽管取决于系统,PHP通常使用 IEEE 754双精度格式,则由于取整而导致的最大相对误差为“1.11e-16”;而非基本数学运算可能会给出更大误差,并且要考虑到进行复合运算时的误差传递。
本教程操作环境:windows7系统、PHP8版、DELL G3电脑
浮点数运算的“锅”
//加 $a = 0.1; $b = 0.7; $c = intval(($a + $b) * 10); echo $c."<br>"; //输出:7 //减 $a = 100; $b = 99.98; $c = $a - $b; echo $c."<br>"; //输出:0.019999999999996 //乘 $a = 0.58; $b = 100; $c = intval($a * $b); echo $c."<br>"; //输出:57 //除 $a = 0.7; $b = 0.1; $c = intval($a / $b); echo $c."<br>"; //输出:6
登录后复制