當乘以小數時有一個奇怪的錯誤。當我將諸如2.1之類的小數乘以2等數字(以獲得產品4.2)時,PHP將以相同的方式顯示它們,並且通過比較,將它們顯示爲相等。但是,當我乘以2.1乘以7(14.7),儘管PHP仍然將它們顯示爲相等,但經過比較後,它聲明產品不相等。PHP乘法小數點
這裏的說明問題(注意PHP返回什麼)代碼:
$num_1 = 4.2;
$num_2 = 2.1*2;
if($num_1 == $num_2){
$eq = "Equal";
}else{
$eq = "Unequal";
}
echo $num_1.", ".$num_2.", ".$eq."<br>";
// Returns 4.2, 4.2, Equal
$num_1 = 14.7;
$num_2 = 2.1*7;
if($num_1 == $num_2){
$eq = "Equal";
}else{
$eq = "Unequal";
}
echo $num_1.", ".$num_2.", ".$eq."<br>";
// Returns 14.7, 14.7, Unequal
感謝。
歡迎來到[浮點運算](https://docs.oracle.com/cd/E19957-01/806-3568/ncg_goldberg.html)的樂趣! – Powerlord 2014-11-21 17:56:18