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 |
Optioneel. Stel een array met filterparameters in. Geldige array-sleutels zijn variabelennamen. Geldige waarden zijn filter-ID's, of arrays die filter, vlaggen en opties regelen. Deze parameter kan ook een enkelvoudig filter-ID zijn. Als dat zo is, worden alle waarden in het invoerarray gefilterd door het opgegeven filter. |
Tips en opmerkingen
Tip:Zie ookVolledige PHP Filter ReferentiesBekijk de filters die met deze functie kunnen worden gebruikt.
Voorbeeld
In dit voorbeeld gebruiken we de functie filter_input_array() om drie POST-variabelen te filteren. De geaccepteerde POST-variabelen zijn naam, leeftijd en e-mailadres:
<?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)); ?>
Uitvoer lijkt op:
Array ( [name] => Peter [age] => 41 [email] => peter@example.com )