ホームページ > バックエンド開発 > PHP7 > PHP7.0 でのデータのフィルタリングと検証の方法は何ですか?

PHP7.0 でのデータのフィルタリングと検証の方法は何ですか?

WBOY
リリース: 2023-05-27 10:31:45
オリジナル
1010 人が閲覧しました

PHP は Web 開発で広く使用されているプログラミング言語であり、フォーム データの検証やユーザー入力のフィルタリングなどの重要なデータ処理に使用されます。 PHP 7.0 には、入力データのフィルタリングと検証を行うためのさまざまな方法が用意されています。この記事では、主な方法のいくつかを見ていきます。

1. filter_var() 関数

filter_var() 関数は、PHP7.0 でデータのフィルタリングと検証に使用される基本関数です。この関数を使用すると、開発者はフィルター タイプを指定し、検証対象の変数を入力として受け取り、開発者が指定した条件を満たしているかどうかを確認できます。たとえば、開発者はこの関数を使用して、電子メール アドレスの形式が正しいこと、または入力された値が特定の範囲内であることを確認できます。

  1. 電子メール アドレスの検証

次のコード スニペットは、filter_var() を使用して電子メール アドレスが正しい形式であることを検証する方法を示しています。

# 数値範囲の検証
  1. 次のコード スニペットは、filter_var() を使用して、値が指定された範囲内にあるかどうかを検証する方法を示しています:
$email = "test@example.com";
if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
  echo("$email is not a valid email address");
} else {
  echo("$email is a valid email address");
}
ログイン後にコピー

2. フィルタのサニタイズ

検証に加えて、開発者は入力データに加えて、フィルターを使用してデータをクリーンアップまたはサニタイズして、データに有害なコードが含まれないようにすることができます。次のフィルタを使用してデータをサニタイズできます。

FILTER_SANITIZE_STRING: 文字列をサニタイズし、特殊文字からタグとエンコーディングを削除します。
  1. FILTER_SANITIZE_EMAIL: 電子メールをサニタイズし、文字、数字、およびすべてを除くを削除します。 !#$%&'* -/=?^_`{|}~@.[] を除く文字。
  2. FILTER_SANITIZE_NUMBER_INT: 整数をサニタイズし、文字列から数字と - 記号を除くすべての文字を削除します。
  3. FILTER_SANITIZE_NUMBER_FLOAT: 浮動小数点数をサニタイズし、数値、-、.、および e と E (科学的表記法の記号) を除くすべての文字を文字列から削除します。
  4. 次のコードは、FILTER_SANITIZE_STRING を使用してデータをサニタイズする方法を示しています。
$age = 25;
if(!filter_var($age, FILTER_VALIDATE_INT, array("options"=>
    array("min_range"=>18, "max_range"=>60)))) {
  echo("Age is not valid");
} else {
  echo("Age is valid");
}
ログイン後にコピー

このコード スニペットは、入力データに含まれる HTML タグを削除し、文字「John Doe」のみを出力します。

3. フォームの検証

Web フォームは Web 開発において非常に一般的な方法であるため、開発者はフォームによって送信されたデータが正しいかどうかを迅速に検証する方法を必要としています。いくつかのフォーム検証方法を次に示します。

電子メール アドレスの確認
  1. $name = "<h1>John Doe</h1>";
    $name = filter_var($name, FILTER_SANITIZE_STRING);
    echo $name;
    ログイン後にコピー
URL の確認
  1. $email = test@example.com;
    if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
      $emailErr = "Invalid email format";
    }
    ログイン後にコピー
整数の確認
  1. $url = "http://www.example.com";
    if (!filter_var($url, FILTER_VALIDATE_URL)) {
      $urlErr = "Invalid URL";
    }
    ログイン後にコピー
    概要

    PHP7.0 で提供されるフィルターと検証メソッドは非常に実用的で、開発者は簡単かつ迅速な方法でデータを検証できます。フォームの作成、入力の処理、データのサニタイズなど、これらの方法によりデータの正確性とセキュリティを確保できます。

    以上がPHP7.0 でのデータのフィルタリングと検証の方法は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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