PHP filter_input_array() 函数

定义和用法

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

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

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

  • INPUT_GET
  • INPUT_POST
  • INPUT_COOKIE
  • INPUT_ENV
  • INPUT_SERVER
  • INPUT_SESSION (尚未实现)
  • INPUT_REQUEST (尚未实现)

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

语法

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

Optional. Definiert ein Array mit Filter-Parametern.

Gültige Array-Schlüssel sind Variablennamen. Gültige Werte sind Filter-ID oder ein Array, das festgelegte Filter, Flags und Optionen enthält.

Dieser Parameter kann auch eine单独ей фильтр ID sein, wenn ja, werden alle Werte im Eingabearray durch den angegebenen Filter gefiltert.

Tipp und Anmerkungen

Tipp:Siehe auchVollständiges PHP Filter Referenzhandbuchund sieh dir die Filter an, die mit dieser Funktion verwendet werden können.

Beispiel

In diesem Beispiel verwenden wir die Funktion filter_input_array() zur Filterung von drei POST-Variablen. Die akzeptierten POST-Variablen sind Name, Alter und E-Mail-Adresse:

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

Ausgabe ähnlich:

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