我通过表单和 php 文件使用发布数值,var_dump(is_int($my_var));
但它返回bool(false)
虽然我发布1,如果我使用var_dump(is_int(1));
它很好并返回bool(true)
什么是错误的......?
问问题
2728 次
2 回答
8
POST 请求传输的变量是字符串,因此您调用is_int()
的字符串返回 false。
您可以使用is_numeric()
orfilter_var()
代替或简单地将变量转换为整数。
于 2012-07-09T12:07:18.627 回答
2
// First check if it's a numeric value as either a string or number
if(is_numeric($int) === TRUE){
// It's a number, but it has to be an integer
if((int)$int == $int){
return TRUE;
// It's a number, but not an integer, so we fail
}else{
return FALSE;
}
// Not a number
}else{
return FALSE;
}
此外,而不是将变量作为
$my_var = $_POST["value"];
试试这个,看看这个值是否真的被传递了。
$my_var = $_REQUEST["value"];
于 2012-07-09T12:10:46.907 回答