我正在尝试检查是否存在,但即使我的电子邮件地址存在,也始终会返回false
。
function EmailValidation($email)
{
$email = htmlspecialchars(stripslashes(strip_tags($email))); //parse unnecessary characters to prevent exploits
if (filter_var($email, FILTER_VALIDATE_EMAIL))
{ //checks to make sure the email address is in a valid format
$domain = explode( "@", $email ); //get the domain name
if ( @fsockopen ($email,80,$errno,$errstr,3))
{
//if the connection can be established, the email address is probably valid
return "yes";
} else
{
return "no"; //if a connection cannot be established return false
}
//return "not valid"; //if email address is an invalid format return false
}
}
$ve = EmailValidation("myemail@gmail.com");
print_r($ve);
我有500k的电子邮件,我已经被赋予了查找的任务,哪些电子邮件存在,哪些没有。我不想发送电子邮件,但检查电子邮件是否存在。我该如何解决?
答案 0 :(得分:2)
无法检查是否存在电子邮件地址。检查主机可用性也可以忽略不计,因为最大的用户使用了一个优秀可靠的邮件提供商。
除了电子邮件名称字符串验证之外,您唯一能做的就是向每个条目发送电子邮件,看看您是否会收到任何错误电子邮件。当电子邮件不再存在时,大多数提供商会向您发送无法投递的邮件。但这可能发生在1分钟后,1小时后,1天后或任何时间之后。
结论:无法检查电子邮件地址是否真的存在。