PHP filter_input_array() -funktio

Määrittely ja käyttö

filter_input_array() -funktio hakee useita syötteitä skriptin ulkopuolelta ja suodattaa ne.

Tämä funktio ei tarvitse toistuvaa kutsua filter_input(), mikä on hyödyllistä useiden syöteparametrien suodattamisessa.

Tämä funktio voi saada syötteitä eri lähteistä:

  • INPUT_GET
  • INPUT_POST
  • INPUT_COOKIE
  • INPUT_ENV
  • INPUT_SERVER
  • INPUT_SESSION (Ei vielä toteutettu)
  • INPUT_REQUEST (Ei vielä toteutettu)

Jos onnistuu, palauttaa suodetut tiedot, jos epäonnistuu, palauttaa false.

Syntaksi

filter_input(input_type, args)
Parametrit Kuvaus
input_type Välttämätön. Määritä syötytyyppi. Katso yllä olevasta luettelosta mahdolliset tyypit.
args

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

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

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

提示和注释

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

实例

在本例中,我们使用 filter_input_array() 函数来过滤三个 POST 变量。所接受的 POST 变量是姓名、年龄以及电子邮件地址:

<?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] => peter@example.com
 )