PHP浮點數(shù)是否有小數(shù)了,我們要轉(zhuǎn)換整理可能會丟失小數(shù)位數(shù)據(jù)了,下面我來給大家介紹PHP浮點數(shù)轉(zhuǎn)換整型的一些事項,有興趣的同學(xué)可進(jìn)入?yún)⒖?
先我們來做個實驗說明問題的存在,代碼如下:
$f = 0.58;
var_dump(intval($f * 100.0));
也許你認(rèn)為他會輸出58,但是實際上他輸出的是57.原因是作為浮點型數(shù)據(jù),其精度已經(jīng)損失了一部分,達(dá)不到完全精確,所以永遠(yuǎn)不要相信浮點數(shù)結(jié)果精確到了最后一位,也永遠(yuǎn)不要比較兩個浮點數(shù)是否相等.
在實際的開發(fā)中我們可以使用如下邏輯來解決這種境況,代碼如下:
intval(round(floatval($value) * 100));
round也可以使用ceil目的就是將精度調(diào)準(zhǔn).