php 验证整数
2022-08-30 20:18:25
我想知道为什么这不起作用
echo gettype($_GET['id']); //returns string
if(is_int($_GET['id']))
{
echo 'Integer';
}
如果数据是整数,如何验证从GET / POST传递的数据?
我想知道为什么这不起作用
echo gettype($_GET['id']); //returns string
if(is_int($_GET['id']))
{
echo 'Integer';
}
如果数据是整数,如何验证从GET / POST传递的数据?
可以使用
$validatedValue = filter_input(INPUT_GET, 'id', FILTER_VALIDATE_INT);
请参阅 http://php.net/filter_input 和相关函数。
手册说:
若要测试变量是数字还是数字字符串(如表单输入,它始终是字符串),必须使用 is_numeric()。
或者,您可以使用基于正则表达式的测试作为:
if(preg_match('/^\d+$/',$_GET['id'])) {
// valid input.
} else {
// invalid input.
}