この記事では主に PHP の filter_var() 関数と Filter 関数の分析を紹介します。必要な方は参考にしてください。非安全なソース (ユーザー入力など) からのデータを検証およびフィルター処理します。
filter_var() 関数は、指定されたフィルターを通じて変数をフィルター処理します。
成功した場合はフィルタリングされたデータを返し、失敗した場合は false を返します。構文
filter_var(変数、フィルター、オプション)変数: 必須。フィルタリングする変数を指定します。
フィルター: オプション。使用するフィルターの ID を指定します。 (以下の FiltersID リストを参照してください)
options: フラグ/オプションを含む配列を指定します。各フィルターで使用可能なフラグとオプションを確認してください。
<? @header('content-type:text/html;charset=utf-8;'); $email_a='jcifox@gmail.com'; $email_b='@jcifox@gmail.com'; $email_c='jcifoxgmail.com'; $ip_a='0.0.0.0'; $ip_b='255.255.255.255'; $ip_c='0.0.0.265'; echo $email_a.' : '; echo (filter_var($email_a,FILTER_VALIDATE_EMAIL))?'is valid':'is not valid'; echo '<br /><br />'; echo $email_b.' : '; echo (filter_var($email_b,FILTER_VALIDATE_EMAIL))?'is valid':'is not valid'; echo '<br /><br />'; echo $email_c.' : '; echo (filter_var($email_c,FILTER_VALIDATE_EMAIL))?'is valid':'is not valid'; echo '<br /><br />'; echo $ip_a.' : '; echo (filter_var($ip_a,FILTER_VALIDATE_IP))?'is valid':'is not valid'; echo '<br /><br />'; echo $ip_b.' : '; echo (filter_var($ip_b,FILTER_VALIDATE_IP))?'is valid':'is not valid'; echo '<br /><br />'; echo $ip_c.' : '; echo (filter_var($ip_c,FILTER_VALIDATE_IP))?'is valid':'is not valid'; ?>
FILTER_SANITIZE_STRING: タグを削除し、特殊文字を削除またはエンコードします。
FILTER_SANITIZE_STRIPPED: 「文字列」フィルターのエイリアス。
FILTER_SANITIZE_ENCODED: 文字列を URL エンコードし、特殊文字を削除またはエンコードします。
FILTER_SANITIZE_SPECIAL_CHARS: HTML エスケープ文字 '"a8093152e673feb7aba1828c43532094& および ASCII 値が 32 未満の文字。
FILTER_SANITIZE_EMAIL: 文字、数字、!#$%&'* -/=?^ _ を除くすべての文字を削除します。 `{|}~@.[]
FILTER_SANITIZE_URL: 文字、数字、$-_ を除くすべての文字を削除します。!*'(),{}|\\^~[]`a8093152e673feb7aba1828c43532094#% "; /?:@&=
FILTER_SANITIZE_NUMBER_INT: 数字、- および - を除くすべての文字を削除します。
FILTER_SANITIZE_NUMBER_FLOAT: 数字、- および.,eE を除くすべての文字を削除します。
FILTER_SANITIZE_MAGIC_QUOTES:addslashes() を適用します。
FILTER_UNSAFE_RAW: 特殊文字のフィルタリング、削除、エンコードは行われません。
FILTER_VALIDATE_INT: 値を指定された範囲内の整数として検証します。
FILTER_VALIDATE_BOOLEAN: 「1」、「true」、「on」、および「yes」の場合は true を返し、「0」、「false」、「off」、「no」、および「」の場合は、 false を返します。それ以外の場合は NULL が返されます。
FILTER_VALIDATE_FLOAT: 値を浮動小数点数として検証します。
FILTER_VALIDATE_REGEXP: Perl 互換の正規表現である regexp に基づいて値を検証します。
FILTER_VALIDATE_URL: 値を URL として検証します。
FILTER_VALIDATE_EMAIL: 値を電子メールとして検証します。
FILTER_VALIDATE_IP: 値を IP アドレスとして検証します。
上記がこの記事の全内容です。その他の関連コンテンツについては、PHP 中国語 Web サイトをご覧ください。
#関連する推奨事項:
#php の URL エンコード関数 urlencode() の分析について
#以上がPHPのfilter_var()関数とFilter関数の解析の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。