设为首页 - 加入收藏 - 网站地图 欢迎加QQ群 :14364084
当前位置:谭博的博客 > 编程语言 > php > 正文

为什么我GET到的变量是数字,is_int却返回false

时间:2013-03-07 22:07 来源:未知 标签: 作者:谭博 阅读:

例如 访问网址 http://www.tanbo.name/?s=1

 

我在 php文件中这么写

 

<?php

$s = $_GET['s'];

echo $s;  //此处输出 1

if( !is_int($s) ){  //此处输出不是数字

echo "不是数字";

}

?>

 

1怎么不是数字?

其实 ,这里get过来的值是字符串 虽然写的是1 数字, 但是is_int 是把他当做字符串了

 

改成下面的写法 即可

 

 

<?php

$s = (int)$_GET['s'];

echo $s;  //此处输出 1

if( !is_int($s) ){  //此处输出不是数字

echo "不是数字";

}

?>

 

 

 

关注微信公众号

微信扫一扫,打赏我

热评文章
    内容不错,支持一下
    评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
    • 游客
      2013-03-15 08:47:43发表

      强制转型后,就没有必要判断$s是否是整型了,可以用is_numberic()