如何检查电子邮件地址是否存在


How to check if the email address exist?

最近我注意到有些人使用虚假电子邮件注册,例如"blablabla@blablabla.bla"

我想检查在注册表中输入的电子邮件是否有效且存在

谢谢..

我不想发送任何东西:/当我搜索时,我发现一些叫做 Mx 记录如何使用它的东西?

向相关电子邮件地址发送一封电子邮件,其中包含指向您网站的链接。此链接应包含与相关用户帐户绑定的唯一令牌(或者,您也可以简单地将用户的 ID 添加到 URL,以便您知道要验证令牌的帐户)。当用户单击它时,您的网站应验证令牌。如果令牌有效,则应用程序可以假定有问题的电子邮件地址存在并且属于用户。示例链接:

http://mywebsite.com/validate.php?user=2934&validate=37dbhjibh8879uhe98098ushy89d3dd3

其中2934是用户 ID,37dbhjibh8879uhe98098ushy89d3dd3是您发送并需要验证的令牌。

当用户注册时,您可以使用以下命令检查电子邮件是否符合 RFC 822 语法:

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

如果输入的电子邮件地址的域具有有效的 MX 记录,则可以使用以下代码:

checkdnsrr(preg_replace('/^[^@]+@/', '', $emailAddress), 'MX');

但是 checkdnsrr() 在 Windows 平台上不起作用