ID | 名前 | オプション | フラグ | 説明 |
---|---|---|---|---|
FILTER_SANITIZE_EMAIL |
"email" | 英字、数字および !#$%&'*+-/=?^_`{|}~@.[] 以外のすべての文字を取り除きます。 | ||
FILTER_SANITIZE_ENCODED |
"encoded" |
FILTER_FLAG_STRIP_LOW ,
FILTER_FLAG_STRIP_HIGH ,
FILTER_FLAG_ENCODE_LOW ,
FILTER_FLAG_ENCODE_HIGH
|
文字列を URL エンコードします。オプションで、 特殊文字を取り除いたりエンコードしたりします。 | |
FILTER_SANITIZE_MAGIC_QUOTES |
"magic_quotes" | addslashes() を適用します。 | ||
FILTER_SANITIZE_NUMBER_FLOAT |
"number_float" |
FILTER_FLAG_ALLOW_FRACTION ,
FILTER_FLAG_ALLOW_THOUSAND ,
FILTER_FLAG_ALLOW_SCIENTIFIC
|
数字、+- および オプションで .,eE 以外のすべての文字を取り除きます。 | |
FILTER_SANITIZE_NUMBER_INT |
"number_int" | 数字、プラス記号、マイナス記号 以外のすべての文字を取り除きます。 | ||
FILTER_SANITIZE_SPECIAL_CHARS |
"special_chars" |
FILTER_FLAG_STRIP_LOW ,
FILTER_FLAG_STRIP_HIGH ,
FILTER_FLAG_ENCODE_HIGH
|
'"<>& および ASCII 値が 32 未満の文字を HTML エスケープします。オプションで、 特殊文字を取り除いたりエンコードしたりします。 | |
FILTER_SANITIZE_FULL_SPECIAL_CHARS |
"full_special_chars" |
FILTER_FLAG_NO_ENCODE_QUOTES ,
|
htmlspecialchars() に ENT_QUOTES を指定してコールするのと同じです。
クォートのエンコードを無効にするには
FILTER_FLAG_NO_ENCODE_QUOTES を設定します。
htmlspecialchars() と同様、このフィルタは
default_charset に対応しています。
現在の文字セットで無効な文字となるバイトシーケンスが検出されると文字列全体を拒否し、
結果は長さ 0 の文字列となります。
このフィルタをデフォルトのフィルタとして使う場合は、以下の警告を参考にして
デフォルトのフラグを 0 に設定しましょう。
|
|
FILTER_SANITIZE_STRING |
"string" |
FILTER_FLAG_NO_ENCODE_QUOTES ,
FILTER_FLAG_STRIP_LOW ,
FILTER_FLAG_STRIP_HIGH ,
FILTER_FLAG_ENCODE_LOW ,
FILTER_FLAG_ENCODE_HIGH ,
FILTER_FLAG_ENCODE_AMP
|
タグを取り除きます。オプションで、 特殊文字を取り除いたりエンコードしたりします。 | |
FILTER_SANITIZE_STRIPPED |
"stripped" | "string" フィルタのエイリアス。 | ||
FILTER_SANITIZE_URL |
"url" | 英字、数字および $-_.+!*'(),{}|\\^~[]`<>#%";/?:@&= 以外のすべての文字を取り除きます。 | ||
FILTER_UNSAFE_RAW |
"unsafe_raw" |
FILTER_FLAG_STRIP_LOW ,
FILTER_FLAG_STRIP_HIGH ,
FILTER_FLAG_ENCODE_LOW ,
FILTER_FLAG_ENCODE_HIGH ,
FILTER_FLAG_ENCODE_AMP
|
何もせず、オプションで特殊文字を取り除いたりエンコードしたりします。 |
これらのフィルタのいずれかを ini ファイルやウェブサーバーの設定でデフォルトフィルタとして使用すると、
デフォルトのフラグは
FILTER_FLAG_NO_ENCODE_QUOTES
となります。
デフォルトでクォートをエンコードさせるには、
明示的に filter.default_flags を 0 としなければなりません。
例1 デフォルトのフィルタを htmlspecialchars と同様の挙動にする設定
filter.default = full_special_chars
filter.default_flags = 0