(PHP 5 >= 5.2.0, PECL filter:0.11.0)
filter_input — 指定した名前の変数を外部から受け取り、オプションでそれをフィルタリングする
INPUT_GET、INPUT_POST、 INPUT_COOKIE、INPUT_SERVER、 INPUT_ENV、INPUT_SESSION (まだ実装されていません) および INPUT_REQUEST (まだ実装されていません) のいずれか。
取得する変数の名前。
適用するフィルタ。デフォルトは FILTER_DEFAULT です。
オプションあるいはフラグの論理和の連想配列。 オプションを指定可能なフィルタの場合、この配列の "flags" フィールドにフラグを指定します。
成功した場合は要求された変数の値、フィルタリングに失敗した場合に FALSE、 あるいは変数 variable_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 & son. <a href='?search=Me%20%26%20son'>Search again.</a>