为什么filter_input不接受PHP superglobals而不是数组值?

时间:2016-06-25 07:28:47

标签: php

filter_input() 为什么不直接使用$_POST AND $_GET数组的元素?相反,它接收INPUT_GETINPUT_POST并将元素索引作为第一个和第二个参数,再加上规则作为第三个参数....

例如,为什么不能简单地写:

filter_input($_POST['element'], FILTER_VALIDATE_INT);

而不是:

filter_input(INPUT_POST, 'element', FILTER_VALIDATE_INT);

感谢。

1 个答案:

答案 0 :(得分:0)

它只是一个实现。如果您只需要一种过滤变量的方法,那么您会发现 filter_var() 是一个更好的选择。因为您只需要传递变量和过滤器。

filter_var($_POST['element'], FILTER_VALIDATE_INT);