最新的Web开发教程
 

PHP filter_input_array() Function

<PHP过滤器参考

检查外部变量"email"发送到PHP页面,通过"get"方法,并检查它是否是一个有效的电子邮件地址:

<?php
if (!filter_input(INPUT_GET, "email" , FILTER_VALIDATE_EMAIL)) {
    echo("Email is not valid");
} else {
    echo("Email is valid");
}
?>
运行示例»

定义和用法

所述filter_input_array()函数获得外部变量(eg from form input)以及任选的过滤它们。

该功能是用于检索/过滤许多值,而不是调用有用filter_input()许多次。


句法

filter_input_array( type, definition, add_empty )
参数 描述
type 需要。 输入型检查。 可以是下列之一:
  • INPUT_GET
  • INPUT_POST
  • INPUT_COOKIE
  • INPUT_SERVER
  • INPUT_ENV
definition 可选的。 指定的过滤器参数的阵列。 一个有效的数组键是变量名,和一个有效的值是过滤器的名称或ID,或阵列指定过滤器,标志和选项。 这个参数也可以是一个单一的过滤器的名称/ ID; 然后将输入阵列中的所有值都通过指定的过滤器过滤
add_empty 可选的。 一个布尔值。 当设置为TRUE其添加丢失的钥匙为NULL的返回值。 默认值是true

技术细节

返回值:

返回包含关于成功的变量的值的阵列,或失败FALSE

PHP版本: 5.2.0+

在这个例子中,我们使用filter_input_array()函数来过滤三种桩变量。 接收到的POST变量是一个名字,年龄和E-mail地址:

<?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]
  )

<完整PHP过滤器参考