我正在学习数据验证相关的练习,决定尝试使用filter_input()
函数。当我尝试运行以下代码时:
$_POST['var'] = 10;
$filtered = filter_input(INPUT_POST, 'var', FILTER_VALIDATE_FLOAT);
var_dump($filtered);
var_dump($filtered)
返回 NULL。如果通过提交表单将 $_POST['var']
赋值,则知道代码有效,但我想知道为什么手动将值分配给 $_POST[]
数组不会返回 float(10)
?
filter_input()
的这个错误。因此,如果未设置变量,我最终会执行filter_var(@$_POST['var'])
以消除PHP提示“未定义索引:var”,而filter_input()
则为您处理此问题。令人失望。 - dossy