PHP filter_input_array() 関数

❮ PHP フィルタ・リファレンス


定義と用法

filter_input_array() 関数は、外部(例えばフォーム入力からの)変数を取得し、必要に応じてそれらをフィルタリングします。

この関数は、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()関数を使用して3つのPOST変数をフィルタリングします。 受信したPOST変数は、 name、 age、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] => peter@example.com
  )

❮ 完全な PHP フィルタ・リファレンス