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 )