首页 行业资讯 宠物日常 宠物养护 宠物健康 宠物故事

php判断是否为整数

发布网友

我来回答

4个回答

懂视网

在网上看到过这样三种做法,下面来跟大家讨论下,如有问题,欢迎指出,大家共同学习

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教程》

热心网友

//定义判断一个变量是否是整数的函数
function isnum($varnum){
//整数包括0-9的数字
$string_var = "01234567";
$len_string = strlen($varnum);
if(substr($varnum,0,1)=="0"){
return false;
die();
}else{
for($i=0;$i<$len_string;$i++){
$checkint = strpos($string_var,substr($varnum,$i,1));
if($checkint===false){
return false;
die();
}
}
return true;
}
}
//测试
$p=22.336;
var_mp(isnum($p));//bool(false)不为整数,所以返回false
exit;

热心网友

if(preg_match("/^[\d]+$/")){
整数
}else{
不是整数
}

这种做法安全

热心网友

使用函数 is_int()

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com