加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 如何检查$_GET数组中的变量是否为整数?

发布时间:2020-12-13 22:20:01 所属栏目:PHP教程 来源:网络整理
导读:我有一个这样的页面: http://sitename/gallery.php?page=2 它底部有分页链接,我们可以浏览它们.每次点击页码时,它都会发送一个参数page = 1或page = 2的GET请求,依此类推…… 当我从teh $_GET变量将这些值存储到$page时,它是一个字符串值.我可以使用(int)将
我有一个这样的页面:

http://sitename/gallery.php?page=2

它底部有分页链接,我们可以浏览它们.每次点击页码时,它都会发送一个参数page = 1或page = 2的GET请求,依此类推……

当我从teh $_GET变量将这些值存储到$page时,它是一个字符串值.我可以使用(int)将它转换为整数,如下所示:

if(!empty($_GET['page'])){
       $page = (int)$_GET['page'];
       echo "Page Number: ".$page;
}

但是我怎样才能确保传递的值只是一个整数而不是其他废话?

解决方法

使用过滤器:

if (null !== ($page = filter_input(INPUT_GET,'page',FILTER_VALIDATE_INT,FILTER_NULL_ON_FAILURE))) {
    // $page is now an integer
}

这还会检查变量是否同时出现在查询字符串中.如果要区分缺失和无效,则必须将最后一个参数留给filter_input():

$page = filter_input(INPUT_GET,FILTER_VALIDATE_INT);
// $page can be null (not present),false (present but not valid) or a valid integer

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读