ホームページ  >  記事  >  バックエンド開発  >  PHPのfilter_var()関数とFilter関数の解析

PHPのfilter_var()関数とFilter関数の解析

不言
不言オリジナル
2018-06-21 13:54:011339ブラウズ

この記事では主に PHP の filter_var() 関数と Filter 関数の分析を紹介します。必要な方は参考にしてください。非安全なソース (ユーザー入力など) からのデータを検証およびフィルター処理します。

filter_var() 関数は、指定されたフィルターを通じて変数をフィルター処理します。

成功した場合はフィルタリングされたデータを返し、失敗した場合は false を返します。

構文
filter_var(変数、フィルター、オプション)変数: 必須。フィルタリングする変数を指定します。
フィルター: オプション。使用するフィルターの ID を指定します。 (以下の FiltersID リストを参照してください)
options: フラグ/オプションを含む配列を指定します。各フィルターで使用可能なフラグとオプションを確認してください。

<? 
@header(&#39;content-type:text/html;charset=utf-8;&#39;); 
$email_a=&#39;jcifox@gmail.com&#39;; 
$email_b=&#39;@jcifox@gmail.com&#39;; 
$email_c=&#39;jcifoxgmail.com&#39;; 
$ip_a=&#39;0.0.0.0&#39;; 
$ip_b=&#39;255.255.255.255&#39;; 
$ip_c=&#39;0.0.0.265&#39;; 
echo $email_a.&#39; : &#39;; 
echo (filter_var($email_a,FILTER_VALIDATE_EMAIL))?&#39;is valid&#39;:&#39;is not valid&#39;; 
echo &#39;<br /><br />&#39;; 
echo $email_b.&#39; : &#39;; 
echo (filter_var($email_b,FILTER_VALIDATE_EMAIL))?&#39;is valid&#39;:&#39;is not valid&#39;; 
echo &#39;<br /><br />&#39;; 
echo $email_c.&#39; : &#39;; 
echo (filter_var($email_c,FILTER_VALIDATE_EMAIL))?&#39;is valid&#39;:&#39;is not valid&#39;; 
echo &#39;<br /><br />&#39;; 
echo $ip_a.&#39; : &#39;; 
echo (filter_var($ip_a,FILTER_VALIDATE_IP))?&#39;is valid&#39;:&#39;is not valid&#39;; 
echo &#39;<br /><br />&#39;; 
echo $ip_b.&#39; : &#39;; 
echo (filter_var($ip_b,FILTER_VALIDATE_IP))?&#39;is valid&#39;:&#39;is not valid&#39;; 
echo &#39;<br /><br />&#39;; 
echo $ip_c.&#39; : &#39;; 
echo (filter_var($ip_c,FILTER_VALIDATE_IP))?&#39;is valid&#39;:&#39;is not valid&#39;; 
?>

FiltersID 名: 説明

FILTER_CALLBACK: ユーザー定義関数を呼び出してデータをフィルターします。

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_pdo について処理ステートメントの事前解析

#

以上がPHPのfilter_var()関数とFilter関数の解析の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。