我需要检查一个表单输入值是一个正整数(不只是一个整数),我注意到另一个代码片段使用下面的代码:
$i = $user_input_value;
if (!is_numeric($i) || $i < 1 || $i != round($i)) {
return TRUE;
}
Run Code Online (Sandbox Code Playgroud)
我想知道使用上面的三个检查是否有任何好处,而不仅仅是这样做:
$i = $user_input_value;
if (!is_int($i) && $i < 1) {
return TRUE;
}
Run Code Online (Sandbox Code Playgroud) 为什么is_int在以下情况下总是返回false?
echo $_GET['id']; //3
if(is_int($_GET['id']))
echo 'int'; //not executed
Run Code Online (Sandbox Code Playgroud)