检测带有垃圾域的一次性电子邮件

kta*_*aro 5 php codeigniter

我正在使用 php/codeigniter 开发网站。

我已经从 github 下载了临时电子邮件域列表https://gist.github.com/adamloving/4401361

我将其集成到我的网站中以过滤和验证电子邮件地址。但我注意到有些域名是垃圾,无法通过提供的列表检测到。

请看下图。

在此输入图像描述

目前我使用此代码来过滤/验证电子邮件:

  public function is_temp_mail($mail='')
  {
    $this->db->select('domain');
    $this->db->from('table_disposal_email_domains');
    $domains=$this->db->get()->result();
    foreach($domains as $domain)
    {
      list(,$mail_domain) = explode('@',$mail);
      if(strcasecmp($mail_domain, $domain->domain) == 0){
            return true;
      }
    }
    return false;
  }
Run Code Online (Sandbox Code Playgroud)

如何阻止垃圾域名。请帮忙。

小智 6

一次性电子邮件的问题之一是每天都会添加新域。因此,几天后维护自己的列表是不够的。

您可以使用validator.pizza API,它是免费的并且经常更新。

免责声明:我制作了这个 API

  • 尝试了 temp-mail.org 和 validator.pizza 的一些域,说它不是一次性的。 (2认同)