歳じゃないよ人生は

新しい事、楽しい事 そんなコトを探してます。

*

filter_inputについての覚書

   

GETやPOSTまたはSERVERの値を取得する時に使うfilter_inputについての覚書きです。

通常の使用…
$aaa = filter_input( INPUT_POST, ‘aaa’ ); や
型を明示的に指定する
$aaa = (string)filter_input( INPUT_POST, ‘aaa’ ); のような使い方は良いのですが、引数として存在する filter 部分の設定がいつまで経っても覚えきれないのでメモします。
なお、全てのfilterを記載している訳ではないので、ご覧になる場合はご了承ください。

filter_input( input_type, variable, filter, options )

FILTER_SANITIZE_STRING
文字列以外の有害データ(タグなど)を削除またはエンコード

FILTER_SANITIZE_ENCODED
urlencode()関数と同様の働き

FILTER_SANITIZE_SPECIAL_CHARS
特殊文字をHTMLエスケープ

FILTER_SANITIZE_EMAIL
文字列からe-mailとして不正な文字をすべて取り除く

FILTER_SANITIZE_URL
文字列からURL文字として不正な文字をすべて取り除く

FILTER_SANITIZE_NUMBER_INT
数値から + – 以外の不正な文字を取り除く

FILTER_SANITIZE_NUMBER_INT
浮動小数点数から+ – 以外の不正な文字を取り除く

options
FILTER_FLAG_ALLOW_FRACTION
小数部の区切り( . )を許容する
FILTER_FLAG_ALLOW_THOUSAND
3桁区切り( , )を許容する
FILTER_FLAG_ALLOW_SCIENTIFIC
科学記法( eやE )を許容する

FILTER_SANITIZE_MAGIC_QUOTES
文字列に addslashes() 関数を実行

FILTER_VALIDATE_BOOLEAN
以下のブール値を返す
“1”, “true”, “on” および “yes” → TRUE
“0”, “false”, “off” および “no” → FALSE
その他 → NULL

FILTER_VALIDATE_FLOAT
浮動小数点としての値の検証を行う

FILTER_VALIDATE_URL
URLとしての値の検証を行う

option
FILTER_FLAG_SCHEME_REQUIRED
RFC対応のURLであることが必要(例 http://example)
FILTER_FLAG_HOST_REQUIRED
ホスト名を含んでいることが必要(例 http://www.example.com)
FILTER_FLAG_PATH_REQUIRED
ドメイン名の後ろにパスを持っていることが必要(www.example.com/example1/test2/)
FILTER_FLAG_QUERY_REQUIRED
クエリ文字列を持っていることが必要(例 “example.php?name=Peter&age=37″)

FILTER_VALIDATE_EMAIL
メールアドレスとして値の検証を行う

最後にPOSTで渡される配列の値を取得する filterと options

$ary = filter_input( INPUT_POST, ‘array’, FILTER_DEFAULT, FILTER_REQUIRE_ARRAY );

これをいつも忘れがち。

こうやってまとめると、改めて気づくとこがありますよね。

 - PHP

  関連記事

no image
php 5.1.6から5.3.3へ

かねてからの検案事項だったphpのバージョンアップをやっと決行(今更ですが)。 …

no image
php.iniの設定

一台のサーバーで複数のwordpressを動かすと、phpに割り当てるメモリーを …

no image
onloadイベントが動かない

今回ある仕事で、戻ってきたデータの値を判定し、Ajax処理をonloadで行おう …

no image
date関数のHi

date関数を使って昼の12時を境に処理を分岐しようと思った。 何も考えずに、d …

no image
str_pad

文字数を指定した幅で揃えてくれる便利な関数 今回のお仕事で初めて使いましたが、メ …

no image
$_POSTの値

phpでフォームを作ることの多い私が、今更ながら $_POST に有効な値が入っ …