在网上看到过这样三种做法,下面来跟大家讨论下,如有问题,欢迎指出,大家共同学习
1,is_int来进行判断if(is_int(2.0)){
echo "整数";
}else{
echo "非整数";
}
输出非整数
一般情况下,是可以判断出来的,但是如果给出的数字是2.0类似这样的,这样的判断方式就会出现问题,所以这种做法不对
2,floor ,ceil$a = 2.0;
if(floor($a)==$a){
echo "整数";
}else{
echo "非整数";
}
输出整数
用这样的取整函数,这样这种做法是可以的
3,正则判断
代码片段$reg = '/^[0-9][0-9]*$/'
$goods_number = '0';
if( preg_match($reg,$goods_number)){
echo '是整数';
}else{
echo '不是整数';
}
输出整数
以上是我自己总结的几种方法,第二种第三种经过自己的测试是可以的,如过发现有问题,可以提醒下我^_^
接着通过手册又发现几个这样的php判断函数,如ctype_digit,is_numeric(这个可以判断16进制数)。有兴趣的朋友可以自己去测测,研究研究
感谢大家的阅读,希望大家收益多多。
本文转自:https://blog.csdn.net/u013757199/article/details/51577379
推荐教程:《php教程》