<?php
$foo = 0;
do {
echo "\$foo = $foo".($foo >= 0.8 ? " >= 0.8<br>\n" : " < 0.8<br>\n");
$foo = $foo + 0.1;
} while($foo <= 1);
?>
導致以下的輸出:
$foo = 0 < 0.8
$foo = 0.1 < 0.8
$foo = 0.2 < 0.8
$foo = 0.3 < 0.8
$foo = 0.4 < 0.8
$foo = 0.5 < 0.8
$foo = 0.6 < 0.8
$foo = 0.7 < 0.8
$foo = 0.8 < 0.8
$foo = 0.9 >= 0.8
$foo = 1 >= 0.8
..甚至var_dump並沒有告訴我更多,它是0.8。可怕:
round($foo,1) >= 0.8
解決了問題 - 幫助感激!
非常感謝這個小小的教訓;) – s10z 2012-01-29 11:45:44
不客氣;) – Czechnology 2012-01-29 11:47:42
+1爲更完整的答案(也想過這個,但是因爲我對PHP不熟悉,所以我可能錯過了某些東西或給出錯誤建議) – schnaader 2012-01-29 13:56:33