我想知道为什么这不起作用
echo gettype($_GET['id']); //returns string
if(is_int($_GET['id']))
{
echo 'Integer';
}
Run Code Online (Sandbox Code Playgroud)
如果它是整数,如何验证从GET/POST传递的数据?
Gor*_*don 29
可以使用
$validatedValue = filter_input(INPUT_GET, 'id', FILTER_VALIDATE_INT);
Run Code Online (Sandbox Code Playgroud)
请参阅http://php.net/filter_input和相关功能.
cod*_*ict 25
该手册说:
要测试变量是数字还是数字字符串(例如表单输入,始终是字符串),必须使用is_numeric().
您可以选择使用基于正则表达式的测试:
if(preg_match('/^\d+$/',$_GET['id'])) {
// valid input.
} else {
// invalid input.
}
Run Code Online (Sandbox Code Playgroud)