max*_*n15 3 php validation get
我有一个这样的页面:
http://sitename/gallery.php?page=2
它底部有分页链接,我们可以浏览它们.每次点击页码时,它都会发送一个参数page = 1或page = 2的GET请求,依此类推......
当我将这些值存储到$page
teh $_GET
变量时,它是一个字符串值.我可以使用(int)
这样的方法将它转换为整数:
if(!empty($_GET['page'])){
$page = (int)$_GET['page'];
echo "Page Number: ".$page;
}
Run Code Online (Sandbox Code Playgroud)
但是我怎样才能确保传递的值只是一个整数而不是其他废话?
Ja͢*_*͢ck 16
使用过滤器:
if (null !== ($page = filter_input(INPUT_GET, 'page', FILTER_VALIDATE_INT, FILTER_NULL_ON_FAILURE))) {
// $page is now an integer
}
Run Code Online (Sandbox Code Playgroud)
这还会检查变量是否同时出现在查询字符串中.如果你想区分缺失和无效,你必须将最后一个参数留给filter_input()
:
$page = filter_input(INPUT_GET, 'page', FILTER_VALIDATE_INT);
// $page can be null (not present), false (present but not valid) or a valid integer
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
6793 次 |
最近记录: |