PHP で電子メールを検証する

Feb 28, 2024 am 10:31 AM
PHPプログラミング バックエンド開発 PHPで書かれた

PHP での電子メールの検証は、Web サイト開発における一般的なニーズの 1 つです。効果的な電子メール検証により、ユーザー入力の精度が向上し、悪意のある登録や情報漏洩を防ぎます。この記事では、PHP を使用して、ユーザーが入力した電子メール形式が仕様に準拠していることを確認するためのシンプルで効果的な電子メール検証コードを作成する方法を紹介します。この記事のガイダンスを通じて、電子メール検証機能を簡単に実装し、Web サイトのユーザー エクスペリエンスとセキュリティを向上させることができます。 PHPエディターAppleがメール検証の方法を詳しく解説し、簡単にスキルを習得できます。

また、FILTER_SANITIZE_EMAIL および FILTER_VALIDATE_EMAIL フィルター名 ID と fiter_var() 関数 Address メソッドを使用して、php で電子メールを検証する別の方法も示します。 。この方法では、まず電子メール アドレスをクリーンアップしてから、電子メール アドレスを検証します。

正規表現を使用して、PHP で電子メールを検証する別の方法について説明します。このメソッドは、preg_match() 関数を使用して、指定された正規表現に基づいて電子メールが有効かどうかを確認します。


filter_var() 関数と FILTER_VALIDATE_EMAIL を使用して PHP で電子メールを検証する

filter_var() 関数を使用して、特定のフィルター名で変数をフィルター処理できます。 FILTER_VALIDATE_EMAIL フィルター名は、検証が必要な電子メールを指定します。この関数は、最初の引数として string として電子メール アドレスを受け取り、2 番目の引数として上記で指定したフィルター ID を受け取ります。したがって、提供された電子メールが有効かどうかを確認できます。関数が成功するか false を返した場合、関数はフィルター処理されたデータを返します。電子メールは有効であると言われていますが、電子メールが存在するということではありません。フィルター ID は、RFC 822 の構文に基づいて電子メールを検証します。有効な電子メールと無効な電子メールを使用して電子メールの検証を テスト できます。

たとえば、パラメータ

$email を受け入れる関数 validateEmail() を作成します。 $email 変数で filter_var() 関数を使用し、2 番目のパラメーターとしてフィルター ID FILTER_VALIDATE_EMAIL を指定します。 if-else 条件を filter_var() 関数に適用します。 if ブロックでは電子メールが有効であることを示すメッセージを表示し、else 条件では電子メールが無効であることを示します。関数の外側で、関数を 2 回呼び出します。最初の関数呼び出しで引数を指定します (peter.piper@iana.org および first.last@example.123) 2回目の電話で。

この例で指定された電子メール アドレスは、

$_POST 変数を使用してフォームからアクセスされると想定できます。以下の例の関数は 2 回呼び出されます。最初の呼び出しでは有効な電子メール アドレスが渡され、2 番目の呼び出しでは無効な電子メールが渡されます。 2 番目の電子メール アドレスは、トップレベル ドメインの番号が含まれているため無効です。結果は明らかです。

サンプルコード:

リーリー

出力:

リーリー


FILTER_VALIDATE_EMAILFILTER_SANITIZE_EMAIL、および filter_var() 関数を使用した、PHP での電子メールの検証

最初の方法で追加された

FILTER_SANITIZE_EMAIL フィルター名 ID を使用して、電子メール アドレスからすべての不正な文字を削除できます。フィルタ名 ID は、メールアドレスが最初のパラメータである filter_var() 関数の 2 番目のパラメータです。この関数は、サニタイズされた電子メールを返します。この機能を再度使用して、サニタイズされた電子メール アドレスの有効性を確認できます。このために、FILTER_VALIDATE_EMAIL フィルター名 ID を使用する最初のアプローチに従うことができます。

たとえば、変数

$email を作成し、無効な文字を含む電子メール アドレスを保存します。電子メール ram(.mugu)@exa//mple.org を文字列として変数に保存します。変数に対して filter_var() 関数を使用し、2 番目の引数として FILTER_SANITIZE_EMAIL ID を使用します。関数を同じ $email 変数に保存します。次に、最初の方法と同様に if-else ステートメントを適用します。今回は、関数内のフィルター名として FILTER_VALIDATE_EMAIL email を使用します。同様にメッセージが表示されます。

次の例では、不正な文字を含む電子メール アドレスが取得され、

filter_var() 関数によってこれらの文字がフィルタリングされ、提供された電子メールがサニタイズされます。例で指定された電子メール アドレスには、()// などの無効な文字が含まれています。この関数はまずこれらの文字を電子メールから削除し、次に電子メールを検証します。

サンプルコード:

リーリー

出力:

<code>
<code class="php hljs" data-lang="php"><span style="display:flex;"><span>ram<span style="color:#666">.</span>mugu<span style="color:#666">@</span>example<span style="color:#666">.</span>org<span style="color:#666">:</span> A valid email
</span></span></code></code>
ログイン後にコピー

使用 preg_match() 函数根据正则表达式验证电子邮件

我们可以使用 preg_match() 函数来验证 PHP 中的电子邮件地址。此方法使用正则表达式作为电子邮件的验证规则。我们可以自己创建正则表达式并定义有效电子邮件的规则。preg_match() 函数接受两个参数,其中第一个是正则表达式,第二个是要检查的电子邮件。我们可以使用三元运算符和函数一起检查电子邮件的有效性。

例如,创建两个变量 $email_first$email_secon,并在这些变量中存储两个电子邮件地址。首先存储有效的电子邮件 firstlast11@gmail.com,然后存储无效的电子邮件 firstlast@11gmail,com。编写一个带有一个参数的函数 validateEmail()。命名参数 $email。在函数内部,在 $regex 变量中编写一个正则表达式,如示例代码所示。然后编写一个三元运算符,其中要检查的条件是 preg_match() 函数。将 $regex 作为第一个参数,将 $email 作为第二个参数。当条件为真时打印电子邮件有效的消息,当条件为假时打印电子邮件无效的消息。回显整个三元表达式。在函数外,调用 validateEmail() 函数两次。在第一个函数调用中使用 $email_first 变量,在第二个函数调用中使用 $email_second 变量。

在下面的示例中,我们编写了一个正则表达式,用于创建验证电子邮件的规则。有效的电子邮件包含收件人姓名、@ 符号、域和顶级域。上面创建的正则表达式接受收件人姓名作为字母数字值。字母表由大写字母和小写字母组成。它也接受一个句点。电子邮件必须有 @ 符号。该域仅包含字母。然后电子邮件应该有一个句点。顶级域应该只由字母组成,并且长度应该是两个或三个。正则表达式是基于此规则创建的。第一封电子邮件是有效的,因为它满足所有规则,但第二封电子邮件无效。无效,因为域名中有数字,顶级域名前没有句号。

示例代码:

<code>
<code class="php hljs" data-lang="php"><span style="display:flex;"><span><span style="color:#408080;font-style:italic"># php 7.x
</span></span></span><span style="display:flex;"><span><span style="color:#666"><?</span>php
</span></span><span style="display:flex;"><span><span style="color:#19177c">$email_first</span> <span style="color:#666">=</span> <span style="color:#ba2121">&#39;firstlast11@gmail.com&#39;</span>;
</span></span><span style="display:flex;"><span><span style="color:#19177c">$email_second</span> <span style="color:#666">=</span><span style="color:#ba2121">&#39;firstlast@11gmail,com&#39;</span>;
</span></span><span style="display:flex;"><span><span style="color:#008000;font-weight:bold">function</span> <span style="color:#00f">validateEmail</span>(<span style="color:#19177c">$email</span>) {
</span></span><span style="display:flex;"><span><span style="color:#19177c">$regex</span> <span style="color:#666">=</span> <span style="color:#ba2121">"/^([a-zA-Z0-9\.]+@+[a-zA-Z]+(\.)+[a-zA-Z]{2,3})$/"</span>;
</span></span><span style="display:flex;"><span><span style="color:#008000;font-weight:bold">echo</span> preg_match(<span style="color:#19177c">$regex</span>, <span style="color:#19177c">$email</span>) <span style="color:#666">?</span> <span style="color:#ba2121">"The email is valid"</span><span style="color:#666">.</span><span style="color:#ba2121">"<br>"</span> <span style="color:#666">:</span><span style="color:#ba2121">"The email is not valid"</span>;
</span></span><span style="display:flex;"><span>}
</span></span><span style="display:flex;"><span>validateEmail(<span style="color:#19177c">$email_first</span>);
</span></span><span style="display:flex;"><span>validateEmail(<span style="color:#19177c">$email_second</span>);
</span></span><span style="display:flex;"><span><span style="color:#bc7a00">?></span><span >
</span></span></span></code></code>
ログイン後にコピー

输出:

<code>
<code class="text hljs" data-lang="text"><span style="display:flex;"><span>The email is valid 
</span></span><span style="display:flex;"><span>The email is not valid
</span></span></code></code>
ログイン後にコピー

以上がPHP で電子メールを検証するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

PHP は行を CSV にフォーマットし、ファイル ポインターを書き込みます PHP は行を CSV にフォーマットし、ファイル ポインターを書き込みます Mar 22, 2024 am 09:00 AM

この記事では、PHP が行を CSV にフォーマットし、ファイル ポインタを書き込む方法について詳しく説明します。非常に実践的だと思いますので、参考として共有します。この記事を読んで何かを得ることができれば幸いです。行を CSV にフォーマットし、ファイル ポインターに書き込む ステップ 1: ファイル ポインターを開く $file=fopen(&quot;path/to/file.csv&quot;,&quot;w&quot;); ステップ 2: fputcsv( ) 関数を使用して行を CSV 文字列に変換するCSV文字列に変換します。この関数は次のパラメータを受け入れます。 $file: ファイル ポインタ $fields: 配列としての CSV フィールド $delimiter: フィールド区切り文字 (オプション) $enclosure: フィールド引用符 (

PHP は現在の umask を変更します PHP は現在の umask を変更します Mar 22, 2024 am 08:41 AM

この記事では、PHP での現在の umask の変更について詳しく説明します。編集者が非常に実用的であると考えたので、参考として共有します。この記事を読んで何かを得ることができれば幸いです。現在の umask を変更する PHP の概要 umask は、新しく作成されたファイルとディレクトリのデフォルトのファイル権限を設定するために使用される PHP 関数です。引数を 1 つ受け取ります。これは、ブロックの許可を表す 8 進数です。たとえば、新しく作成されたファイルへの書き込み権限を禁止するには、002 を使用します。 umask を変更する方法 PHP で現在の umask を変更するには 2 つの方法があります。 umask() 関数を使用する: umask() 関数は現在の umask を直接変更します。その構文は次のとおりです。

PHPはファイルのMD5ハッシュを計算します PHPはファイルのMD5ハッシュを計算します Mar 21, 2024 pm 01:42 PM

この記事では、ファイルの MD5 ハッシュを計算する PHP について詳しく説明します。編集者が非常に実用的であると考えたので、参考として共有します。この記事を読んで何かを得ることができれば幸いです。 PHP はファイルの MD5 ハッシュを計算します MD5 (MessageDigest5) は、任意の長さのメッセージを固定長の 128 ビットのハッシュ値に変換する一方向暗号化アルゴリズムです。ファイルの整合性の確保、データの信頼性の検証、デジタル署名の作成に広く使用されています。 PHP でのファイルの MD5 ハッシュの計算 PHP には、ファイルの MD5 ハッシュを計算するための複数の方法が用意されています: md5_file() 関数を使用します。 md5_file() 関数は、ファイルの MD5 ハッシュ値を直接計算し、32 文字の値を返します。

PHPはキー値を反転した配列を返します PHPはキー値を反転した配列を返します Mar 21, 2024 pm 02:10 PM

この記事では、PHP がどのようにしてキー値を反転した後に配列を返すのかについて詳しく説明します。編集者が非常に実用的であると考えたので、参考として共有します。この記事を読んで何かを得ることができれば幸いです。 PHP キー値フリップ 配列キー値フリップは、配列内のキーと値を交換して、元のキーを値として、元の値をキーとして持つ新しい配列を生成する配列に対する操作です。実装方法 PHP では、次の方法で配列のキーと値の反転を実行できます。 array_flip() 関数: array_flip() 関数は、キーと値の反転操作に特に使用されます。引数として配列を受け取り、キーと値が交換された新しい配列を返します。 $original_array=[

PHP は、前の MySQL 操作でのエラー メッセージの数値エンコーディングを返します。 PHP は、前の MySQL 操作でのエラー メッセージの数値エンコーディングを返します。 Mar 22, 2024 pm 12:31 PM

この記事では、前回の Mysql 操作で PHP から返されたエラー メッセージの数値エンコードについて詳しく説明します。編集者が非常に実用的であると考えたので、参考として共有します。この記事を読んで何かを得ることができれば幸いです. . PHP を使用して MySQL エラー情報を返す 数値エンコーディング はじめに mysql クエリを処理するときにエラーが発生する場合があります。これらのエラーを効果的に処理するには、エラー メッセージの数値エンコーディングを理解することが重要です。この記事では、php を使用して Mysql エラー メッセージの数値エンコーディングを取得する方法を説明します。エラー情報の数値エンコードを取得する方法 1. mysqli_errno() mysqli_errno() 関数は、現在の MySQL 接続の最新のエラー番号を返します。構文は次のとおりです: $erro

PHP を使用して数値の桁数を決定するにはどうすればよいですか? PHP を使用して数値の桁数を決定するにはどうすればよいですか? Mar 26, 2024 am 11:39 AM

PHP を使用して数値の桁数を決定する実用的な方法 プログラミングでは、数値の桁数を決定する必要がよくあります。 PHP でプログラムを作成する場合、いくつかのシンプルだが実用的な方法を使用して、数値の桁数を決定できます。以下では、PHP を使用して数値の桁数を決定するいくつかの方法を紹介し、具体的なコード例を添付します。方法 1: strlen 関数を使用する PHP の strlen 関数は、最初に数値を文字列に変換してから s を使用すると、文字列の長さを返すことができます。

PHPは、指定されたキーが配列内に存在するかどうかを判断します PHPは、指定されたキーが配列内に存在するかどうかを判断します Mar 21, 2024 pm 09:21 PM

この記事では、PHP が配列内に指定されたキーが存在するかどうかを判断する方法について詳しく説明します。編集者が非常に実用的であると考えたので、参考として共有します。この記事を読んで何かを得ることができれば幸いです。 PHP は、指定されたキーが配列内に存在するかどうかを判断します。 PHP では、指定されたキーが配列内に存在するかどうかを判断する方法が数多くあります。 1. isset() 関数を使用します: isset($array[&quot;key&quot;]) この関数ブール値を返します。指定されたキーが存在する場合は true、存在しない場合は false。 2. array_key_exists() 関数を使用します: array_key_exists(&quot;key&quot;,$arr)

PHP で円周率を取得 PHP で円周率を取得 Mar 21, 2024 pm 01:52 PM

この記事では、PHP での円周率の求め方について詳しく解説しますが、編集者が非常に実践的だと考えたので、参考としてシェアさせていただきます。 PHP による円周率の求め方入門 円周率と円の直径の比である円周率 (π) は無理数であり、有限の桁数では表現できません。 php では、組み込み関数 M_PI を使用して pi の近似値を取得できます。 M_PI 関数 M_PI 関数は、小数点以下 14 桁までの正確な pi の近似値を返します。これは PHP の定数であるため、使用するためにパラメーターを使用する必要はありません。構文出力 3.14159265358979 代替方法 M_PI 関数に加えて、いくつかの代替方法があります。

See all articles