PHP フィルター変数

WBOY
リリース: 2024-08-29 13:03:59
オリジナル
1137 人が閲覧しました

Php filter_var() は、指定されたフィルターで特定の変数をフィルター処理するために使用される関数です。 Php で email_id、IP アドレスなどのデータをサニタイズおよび検証するには、filter_var() 関数が使用されます (データが含まれています)。文中の検証とは、入力されたデータが正しい形式であるかどうかを意味します。たとえば、個人の電子メール ID に「@」記号が存在するかどうかなどです。電話番号フィールドには、すべての数字または数字が存在する必要があります。サニタイズとは、将来の問題を防ぐために、入力されたデータをサニタイズするか、データから違法または不要な文字を削除することを意味します。たとえば、ユーザーの電子メールから不要な記号や文字を削除します。

無料ソフトウェア開発コースを始めましょう

Web 開発、プログラミング言語、ソフトウェア テスト、その他

構文:

以下は、Php の filter_var() 関数の基本構文です。

filter_var(variable, filtername, options)
ログイン後にコピー

どこ、

  • 変数: このパラメータは、フィルタリングが必要な変数フィールドである変数フィールドを表します。これは必須フィールドです。
  • filtername: このパラメータは、ユーザーが使用するフィルターの名前を表します。これはオプションのパラメータです。指定しない場合は、FILTER_DEFAULT が使用されます。これは、指定された変数に対してフィルタリングが行われないことを意味します。
  • オプション: このパラメータはオプションです。使用するオプション/フラグを指定します。これは基本的に、フラグまたはオプションのビットごとの論理和の連想配列です。このパラメータが filter_var() 関数で使用される場合は、「flags」フィールドにフラグを指定する必要があり、コールバック関数に呼び出し可能な型を渡す必要があります。すべてのパラメータを受け入れた後、フィルタリングされサニタイズされた変数が返されます。

戻り値: 上記の関数は、フィルターされた値を返します。データ/変数がフィルターされていない場合は false を返します。

Php では filter_var 関数はどのように機能しますか?

PHP では、filter_var() メソッドは上記で説明したさまざまなパラメーターを受け取り、検証/サニタイズされたデータを返します。検証とは、プログラマが指定したデータの形式をチェックすることを意味し、サニタイズとは、データから不要な文字を削除して、プログラマの要求どおりにデータを返すことを意味します。

PHP filter_var の例

例とともに、Php の filter_var() 関数の動作を理解しましょう。

例 #1

filter_var() 関数を使用した整数値の検証:

コード:

<!DOCTYPE html>
<html>
<body>
<?php
// Integer value to check
$value = 789787;
// passing the value in the filter_var() function
if (filter_var($value, FILTER_VALIDATE_INT))
{
echo("Congratulations!!! $value is a valid integer value");
}
else
{
echo("Sorry!! $value is not a valid integer value");
}
?>
</body>
</html>
ログイン後にコピー

出力:

PHP フィルター変数

説明:

上記のコードでは、検証される整数値は変数「value」に格納され、それを検証するために「FILTER_VALIDATE_INT」フィルター名とともに filter_var() メソッドに渡されます。最後に、条件演算子の if と else が条件をチェックするために適用され、それぞれの出力が「echo」を使用してコンソールに出力されます。

例 #2

filter_var() 関数を使用してコンピューターデバイスの IP アドレスを検証する

コード:

<!DOCTYPE html>
<html>
<body>
<?php
// Ip Address to validate
$ip = '180.0.0';
//Passing the ip address and applying the specific ip filter name
if (filter_var($ip, FILTER_VALIDATE_IP)){
echo("Congratulations!! $ip is a valid IP address, passed by the you");
}
else
{
echo("Sorry $ip is an incorrect IP address");
}
?>
</body>
</html>
ログイン後にコピー

出力:

PHP フィルター変数

説明:

上記のコードでは、コンピューターまたはその他のネットワーク デバイスの IP アドレスは、filter_var() メソッドを使用して検証されます。検証される IP アドレスは変数「ip」に格納されます。IP アドレスは固有の形式「x.y.z.w」を持つため、filter_var() 関数の「FILTER_VALIDATE_IP」を使用して検証されます。最後に、渡された IP アドレスが検証され、それぞれの出力が「echo」を使用してコンソールに出力されます。

例 #3

filter_var() 関数を使用した URL アドレスのサニタイズと検証

コード:

<!DOCTYPE html>
<html>
<body>
<?php
// URL which is to be checked
$check_url = "https::////www.abc.com//";
// Sanitizing the URL by removing unnecessary characters from it if any
$check_url = filter_var($check_url, FILTER_SANITIZE_URL);
// Validating the url by passing the appropriate filter name and the sanitized url
if(!filter_var($check_url, FILTER_VALIDATE_URL) == false) {
echo("Congratulations!!! $check_url is the correct URL");
}
else
{
echo("Sorry!! $check_url is an invalid URL");
}
?>
</body>
</html>
ログイン後にコピー

出力:

PHP フィルター変数

説明:

上記のコードでは、特定の形式を持つ URL アドレスが最初にサニタイズされ、次に filter_var() メソッドを使用して検証されます。チェック対象の URL は変数「check_url」に保存されます。URL をサニタイズするには、URL とともにフィルター名として「FILTER_SANITIZE_URL」が渡されます。サニタイズ後、URL は「FILTER_VALIDATE_URL」フィルター名と URL を使用して検証され、検証時のそれぞれの出力が「echo」を使用してコンソールに出力されます。

例 #4

filter_var() 関数を使用してユーザーの電子メール アドレスを検証する

コード:

<!DOCTYPE html>
<html>
<body>
<?php
// email address to be checked
$email_check = "[email&#160;protected]";
// Validating the email by passing the email address and the filtername
if (filter_var($email_check, FILTER_VALIDATE_EMAIL))
{
echo("Congratulations!! $email_check is a valid email address");
}
else
{
echo("Sorry!! You have entered an incorrect email address");
}
?>
</body>
</html>
ログイン後にコピー

出力:

PHP フィルター変数

Explanation:

In the above example, the email address which is to be checked is stored in the variable ‘email_check.’ It is validated using the filter_var() function in Php, bypassing the email variable and the respective filter name (FILTER_VALIDATE_EMAIL). Since the passed email is invalid, so the response is printed on the console using the ‘echo.’

Example #5

Code:

<!DOCTYPE html>
<html>
<?php
// Integer value to be checked
$value = 465675;
// Validating the above integer value range using the 'options' parameter
if(filter_var($value, FILTER_VALIDATE_INT, array("options" => array("min_range" => 10,"max_range" => 4000))))
{
echo "Integer $value is within the specified range";
}
else
{
echo "Sorry!! Integer $value is not in the range provided by you";
}
?>
</body>
</html>
ログイン後にコピー

Output:

PHP フィルター変数

Explanation:

In the above example, the Integer value is to be validated for the given range, i.e., 10 to 400 is tested. Then, in the filter_var() function, the value to be tested is passed along with the filter name (FILTER_VALIDATE_INT) and 1 optional parameter, i.e., ‘options’ having the array with the minimum and maximum range specified. Finally, the variable is validated, and accordingly, the response is printed on the console using the ‘echo.’

Conclusion

The above description clearly explains what is filter_var() functions in Php and how it works to validate and sanitize the variable passed in it. It is one of the important functions that programmers commonly use to filter the data to prevent a security breach. However, this function facilitates the use of different filters by passing the different parameters according to the specific requirements, so the programmer needs to understand it deeply before using it in the program.

以上がPHP フィルター変数の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
php
ソース:php
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート