(PHP 5 >= 5.2.0, PHP 7, PHP 8)
filter_input_array — 获取一系列外部变量,并且可以通过过滤器处理它们
$type
, array|int $options
= FILTER_DEFAULT
, bool $add_empty
= true
): array|false|null这个函数当需要获取很多变量却不想重复调用filter_input()时很有用。
type
INPUT_*
常量之一。
在用户对超全局变量进行任何修改之前,正在过滤的超全局变量内容是 SAPI 提供的“原始”内容。要过滤修改后的超全局变量,请使用 filter_var_array()。
options
FILTER_VALIDATE_*
常量的验证过滤器,也可以是使用 FILTER_SANITIZE_*
常量的清理过滤器。
选项数组是关联数组,其中 key 对应于数据 array
中的键,而关联的值要么是应用于该条目的过滤器,要么是描述如何以及应用哪个过滤器到该条目的关联数组。
描述如何应用过滤器的关联数组必须包含 'filter'
key,其关联的值是要应用的过滤器,FILTER_VALIDATE_*
、FILTER_SANITIZE_*
、FILTER_UNSAFE_RAW
或 FILTER_CALLBACK
常量之一。还可以选择性地包含 'flags'
key,用于指定适用于过滤器的
flag,以及 'options'
key,用于指定适用于过滤器的任何选项。
add_empty
为缺失的 key 添加 null
到返回值中。
成功时,返回 array,包含所请求变量的值。
失败时返回 false
。有一个失败的例外情况,就是 type
指定的输入数组没有填充,并且使用了
FILTER_NULL_ON_FAILURE
flag 时,返回 null
。
如果 add_empty
为 true
,则输入数组中缺失的条目会填充到返回数组中,并且缺失的条目将设置为
null
。
如果过滤失败,则返回 array 中的条目将为 false
,当使用了 FILTER_NULL_ON_FAILURE
flag 时为 null
。
注意:
在
INPUT_SERVER
数组中并没有REQUEST_TIME
,因为它是被稍后插入到 $_SERVER 中的。
FILTER_VALIDATE_*
FILTER_SANITIZE_*