我如何知道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