2014-09-05 133 views
-2

這裏是低於意外的結果PHP FMOD

echo 20*0.01;  

echo round(fmod('0.017','0.01'),2); 

我的代碼非常第二個應顯示0但其顯示6.9388939039072E-18 ..Iam知道fmod不理想在這種情況下使用有時顯示「意外」的輸出。但是如何解決這個問題?我只是在尋找一個答案....蔭其實並不擔心爲什麼輸出6.9388939039072E-18的原因..

+0

'這是什麼' - > https://en.wikipedia.org/wiki/Scientific_notation#E_notation – 2014-09-05 06:18:13

+0

你有什麼解決方案來解決這個問題嗎? – Friend 2014-09-05 06:38:45

回答

0

docs

模量的非整數會給不可預知的結果。

manual說:

注意,操作符%(模數)與整數作品只是( -214748348 2147483647之間),而FMOD()的短期和大量的工作。

+0

坦率地說,iam並不擔心'6.9388939039072E-18'我只是需要解決方案來解決這個問題......至少你應該在評論中添加你的答案...因爲你的答案不回答我的問題,,,現在我沒有能夠刪除這個問題也bcos你havesered它,,但它不是什麼iam尋找... – Friend 2014-09-05 06:36:54