检查有效的公司或大学电子邮件地址

时间:2015-08-26 13:50:36

标签: php email

我想检查一个电子邮件地址,无论是公司的电子邮件地址,如某公司(xyz@stackoverflow.com)或教育机构等。例如,我可以参考“Yammer”网站。他们没有使用yahoo或gmail等通用电子邮件地址或任何其他公共电子邮件地址进行注册。我只能注册我的大学电子邮件地址而不是其他人。他们如何检查这个。我想用PHP做类似的事情。

任何想法或建议对我都非常有帮助。

提前致谢

3 个答案:

答案 0 :(得分:1)

嗯,全世界所有大学的名单(甚至由维基百科提供) - 并且还有一个商业注册(例如德国的this one),每个公司都必须注册。您可能需要检查此类数据库(也许您也可以从域名的whois信息中受益)...

编辑:如果你想反过来,你可能需要信任像this这样的清单。

答案 1 :(得分:0)

您可以验证这一点:

if(!preg_match('/^([\w-\.]+@(?=domain.com)([\w-]+\.)+[\w-]{2,4})?$/',youremailaddress))

答案 2 :(得分:0)

您可以查看" @ domain.com"是in_array。 我想,没有一个档案,列出了所有组织和大学的邮件地址和域名。

所以:

$array_banned = array('gmail.com','yahoo.com','ymail.com', etc);
$array_white  = array('mrdoe@gmail.com');
$domain = substr(strrchr($email, "@"), 1);
if(!in_array($domain,$array_banned) || in_array($domain, $array_white)) {
  // OK, your code here
} else {
  echo 'Sorry, your email address has been excluded. If you want to use your email address please contact admin';
  // so you can insert requested mail in the white-listed array
}

否则,您可以使用执行此类操作的classes,但添加SMTP验证