PHPスクリプトで電子メールアドレスを検証する方法

電子メールアドレス:作成が容易で、入力が難しい。

多くは間違っている可能性があります。 多くは間違って見え、大丈夫です。 多くは正しく見えるが、まったく動作しない。

あなたが収集した電子メールアドレスを取得すること(ニュースレターのため、言いますかパスワード検索のために)は、少なくとも標準に準拠しているかどうかはもちろん、非常に難しいことです。

幸いにも、PHP(5以降)には、電子メールアドレスの妥当性を簡単にテストするための便利な関数とフィルタが用意されています。

PHPスクリプトで電子メールアドレスの検証

PHPで電子メールアドレスの正当性を検証する(アドレスが実際に動作しているかどうかをチェックしない)

FILTER_VALIDATE_EMAIL PHP電子メールアドレス検証の警告

FILTER_VALIDATE_EMAILは、存在しないドメインとトップレベルドメインを含むメールアドレスを検証することに注意してください。 これらを避けたい場合は、長さが4文字以上の最上位ドメイン(「.museum」を誤って破棄する)、または2文字の長さのドメイン名 (すべての国のトップレベルドメイン)またはリストが変更されたときに更新する必要がある既知のトップレベルドメインの1つを選択します。

FILTER_VALIDATE_EMAILは長いドメイン名(64文字以上)を持つメールアドレスとエスケープ文字(「me \ "@ example.com」など)を持つメールアドレスで誤ってボークします。これらの誤認を避けるには、 php-email-address-validationのようなクラスです。

FILTER_VALIDATE_EMAIL電子メールアドレス検証の例

$ email_addressがチェックされるアドレスを保持していると仮定すると、次のようにして有効性を試すことができます。

Webフォームから直接電子メールアドレスをフィルタリングすることもできます (電子メールアドレスが "email"という名前のフィールドに取り込まれたと仮定します)。