filter_input

(PHP 5 >= 5.2.0, PHP 7, PHP 8)

filter_input指定した名前の変数を外部から受け取り、オプションでそれをフィルタリングする

説明

filter_input(
    int$type,
    string$var_name,
    int$filter = FILTER_DEFAULT,
    array|int$options = 0
): mixed

パラメータ

type

INPUT_GETINPUT_POSTINPUT_COOKIEINPUT_SERVER あるいは INPUT_ENV のいずれか。

var_name

取得する変数の名前。

filter

適用するフィルタの ID。フィルタの型 に、利用できるフィルタの一覧があります。

省略した場合は FILTER_DEFAULT を使います。これは FILTER_UNSAFE_RAW と同等です。 結果的に、デフォルトでは何もフィルタリングをしません。

options

オプションあるいはフラグの論理和の連想配列。 オプションを指定可能なフィルタの場合、この配列の "flags" フィールドにフラグを指定します。

戻り値

成功した場合は要求された変数の値、フィルタリングに失敗した場合に false、 あるいは変数 var_name が設定されていない場合に null を返します。フラグ FILTER_NULL_ON_FAILURE が指定されている場合は、変数が設定されていなければ false、 フィルタリングに失敗したら null を返します。

例1 filter_input() の例

<?php
$search_html
= filter_input(INPUT_GET, 'search', FILTER_SANITIZE_SPECIAL_CHARS);
$search_url = filter_input(INPUT_GET, 'search', FILTER_SANITIZE_ENCODED);
echo
"You have searched for $search_html.\n";
echo
"<a href='?search=$search_url'>Search again.</a>";
?>

上の例の出力は、 たとえば以下のようになります。

You have searched for Me &#38; son. <a href='?search=Me%20%26%20son'>Search again.</a>

参考

To Top