函数名:filter_input_array()
适用版本:PHP 5 >= 5.2.0, PHP 7
用法:filter_input_array() 函数用于从输入数组中获取多个输入变量,并根据指定的过滤器对它们进行过滤。
语法:filter_input_array(int $type, array|null $definition = null, bool $add_empty = true)
参数:
- $type:输入类型,可以是 INPUT_GET、INPUT_POST、INPUT_COOKIE、INPUT_SERVER 或 INPUT_ENV。
- $definition:定义输入变量的过滤器规则。可以是一个过滤器类型的数组或一个过滤器类型常量。
- $add_empty:如果为 true(默认值),则空数组元素将被视为有效值。
返回值:返回一个包含过滤后的输入变量的数组,如果失败则返回 FALSE。
示例:
// 定义过滤规则
$filters = array(
'name' => FILTER_SANITIZE_STRING,
'age' => FILTER_VALIDATE_INT,
'email' => FILTER_VALIDATE_EMAIL
);
// 从 POST 数组中获取输入变量并进行过滤
$input = filter_input_array(INPUT_POST, $filters);
// 检查是否过滤成功
if ($input !== false) {
// 输出过滤后的结果
echo 'Name: ' . $input['name'] . '<br>';
echo 'Age: ' . $input['age'] . '<br>';
echo 'Email: ' . $input['email'] . '<br>';
} else {
echo '过滤失败';
}
上述示例中,我们定义了一个包含三个输入变量的过滤规则数组。然后,使用 filter_input_array() 函数从 POST 数组中获取输入变量,并对其进行过滤。如果过滤成功,我们输出过滤后的结果,否则输出“过滤失败”。