我如何知道PHP中的float是否是一個整數?在PHP中檢測整數?
is_round(1.5); // false
is_round(1.0); // true
is_round(1.00000001); // false
我如何知道PHP中的float是否是一個整數?在PHP中檢測整數?
is_round(1.5); // false
is_round(1.0); // true
is_round(1.00000001); // false
修改Rob關於sterofrog評論的代碼。代碼檢查以確保該值也是數字。
function is_round($value) {
return is_numeric($value) && intval($value) == $value;
}
function is_round($value) {
return intval($value) == $value;
}
** @ stereofrog:**怎麼回事? 'intval('bar')!='bar''自'0!='bar''。 – 2010-02-28 00:31:12
@stereofrog:哇...... – 2010-02-28 03:10:18
if ($value = round($value))
應該工作。
一個更短的版本:!fmod($num,1)
在PHP或這JS:!($num % 1)
爲A(更具可讀性)功能:
function is_round($num) {
return !fmod($num, 1);
}
這工作,任何數量的不完全0的基礎上, falsey。您可以使用fmod($num,1)
來獲取數字的小數位;一旦你有這些,你可以只需!
他們。
如果你正在檢查一個數字是否是一個數字,你應該已經證實一個變量實際上是一個數字。 'is_round('bar')=> false'沒有任何意義。 – 2014-08-22 21:24:12