PHP filter_input_array() 函数


PHP filter_input_array() 函数

定义和用法

filter_input_array() 函数从脚本外部获取多项输入,并进行过滤。

本函数无需重复调用 filter_input(),对过滤多个输入变量很有用。

本函数可从各种来源获取输入:

  • INPUT_GET
  • INPUT_POST
  • INPUT_COOKIE
  • INPUT_ENV
  • INPUT_SERVER
  • INPUT_SESSION (Not yet implemented)
  • INPUT_REQUEST (Not yet implemented)

如果成功,则返回被过滤的数据,如果失败,则返回 false。

语法

filter_input(input_type, args)
参数 描述
input_type 必需。规定输入类型。参见上面的列表中可能的类型。
args

可选。规定过滤器参数数组。

合法的数组键是变量名。合法的值是过滤器 ID,或者规定过滤器、标志以及选项的数组。

该参数也可以是一个单独的过滤器 ID,如果是这样,输入数组中的所有值由指定过滤器进行过滤。

提示和注释

提示:参见完整的 PHP Filter 参考手册,查看可与该函数一同使用的过滤器。

实例

在本例中,我们使用 filter_input_array() 函数来过滤三个 POST 变量。所接受的 POST 变量是姓名、年龄以及电子邮件地址:

<?php$filters = array ( "name" => array  (  "filter"=>FILTER_CALLBACK,  "flags"=>FILTER_FORCE_ARRAY,  "options"=>"ucwords"  ), "age" => array  (  "filter"=>FILTER_VALIDATE_INT,  "options"=>array   (   "min_range"=>1,   "max_range"=>120   )  ), "email"=> FILTER_VALIDATE_EMAIL, );print_r(filter_input_array(INPUT_POST, $filters));?>

输出类似:

Array ( [name] => Peter [age] => 41 [email] => [email protected] )
标签:, , ,