PHP filter_var_array() 函数

定义和用法

filter_var_array() 函数获取多项变量,并进行过滤。

由于无需重复调用 filter_input(),因此本函数对过滤多个变量很有用。

如果成功,则返回包含被过滤的变量值的数组,如果失败,则返回 false。

语法

filter_var_array(array, args)
参数 描述
array 必需。规定带有字符串键的数组,包含要过滤的数据。
args

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

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

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

提示和注释

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

例子

<?php
$arr = array
 (
 "name" => "peter griffin",
 "age" => "41",
 "email" => "peter@example.com",
 );

$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_var_array($arr, $filters));
?>

输出类似:

Array
 (
 [name] => Peter Griffin
 [age] => 41
 [email] => peter@example.com
 )