如何在PHP中验证电子邮件地址?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (44)

我用这个函数来验证电子邮件地址:

function validateEMAIL($EMAIL) {
    $v = "/[a-zA-Z0-9_-.+]+@[a-zA-Z0-9-]+.[a-zA-Z]+/";

    return (bool)preg_match($v, $EMAIL);
}

这是否可以检查电子邮件地址是否有效?

提问于
用户回答回答于

你可以使用filter_var

<?php
   function validateEmail($email) {
      return filter_var($email, FILTER_VALIDATE_EMAIL);
   }
?>
用户回答回答于

检查电子邮件地址是否有效的最简单最安全的方法是使用以下filter_var()函数

if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
    // invalid emailaddress
}

另外你可以检查域是否定义了一条MX记录:

if (!checkdnsrr($domain, 'MX')) {
    // domain is not valid
}

但是这仍然不能保证邮件的存在。唯一的办法是发送确认邮件。

扫码关注云+社区

领取腾讯云代金券