通过电子邮件确认电子邮件提供商网址

时间:2015-09-17 08:53:59

标签: php email service

我们希望在注册后将用户重定向到他的电子邮件提供商。问题是 - 我们如何找到重定向的位置?

是否有工具或API?

1 个答案:

答案 0 :(得分:0)

由于到目前为止我还没有找到任何有用的东西,并且暂时没有新的答案,所以决定根据@ ojovirtual的评论编写一个脚本。

这个想法保持不变 - 获取MX记录并将其映射到服务URL

<?php

function getMailServiceUrl($email) 
{
    getmxrr(array_pop(explode('@', $email)), $mx);

    $servicesMap = [
        // MX record => service URL
        'mx15.ukraine.com.ua' => 'https://webmail.adm.tools',
        'alt4.gmail-smtp-in.l.google.com' => 'https://gmail.com',
        'gmail-smtp-in.l.google.com' => 'https://gmail.com'
    ];

    foreach ($mx as $key => $name) {
        if (isset($servicesMap[$name])) {
            return $servicesMap[$name];
        }
    }

    throw new \LogicException('Not found');
}

希望能有所帮助。