看板 PHP 關於我們 聯絡資訊
※ 引述《chenlifu (離)》之銘言: : 比較運算在有小數點的時候 : 不知道該怎麼解決問題 : 目前要把運算結果分開 : ( a / b < 0.05 ) : ( a / b >= 0.05 AND a / b < 0.1) : ....這類狀況 : 發現當 結果是0.0555的時候 : 會被分類為 <0.05 : 遇到這類運算的時候要怎麼辦? : gettype檢查過值為double : 查官網看到有寫用round : 可是不成功..不太懂那意思 : 可否請教版上大大 : 感恩 剛剛 mosquito520 給了我一個網址: http://bbs.ecstart.com/thread-33632-1-1.html 上面有提到類似的問題 $a = 0.03 ; $b = 45 ; $c = $a * $b ; if($c==1.35){ echo "變數c等於1.35 </br></br>變數c為 ".$c ; } else{ echo "變數c「不」等於1.35 </br></br>變數c為 ".$c ; } 我試了一下,發現確實會執行『變數c「不」等於1.35』那段, 雖然 $c 真的是 1.35。真是件有趣的事情~ 而在該討論串的最後有提到一個 PHP的函式 BCCOMP() 可以用來比較浮點數:http://tw2.php.net/bccomp -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.223.227.170
gpmm :好文就是要推! 10/29 22:21