Home  >  Article  >  php教程  >  PHP 验证邮箱是否合法,正确

PHP 验证邮箱是否合法,正确

WBOY
WBOYOriginal
2016-06-06 19:49:271060browse

PHP验证邮件地址是否正确。 (1)只适合中国大陆地区 (2)只限定了主流邮箱,强制限定。其实没有必要让所有的邮箱都允许注册,因为很多人如果提交假邮箱,使用系统自动发邮件,会占用很大的资源因为对方地址不存在。 (3)如果服务器支持checkdnsrr,那么可

PHP验证邮件地址是否正确。

(1)只适合中国大陆地区

(2)只限定了主流邮箱,强制限定。其实没有必要让所有的邮箱都允许注册,因为很多人如果提交假邮箱,使用系统自动发邮件,会占用很大的资源因为对方地址不存在。

(3)如果服务器支持checkdnsrr,那么可以使用,不过已经限定了主流邮箱,就没有必要用这个了。

(4)推荐用户使用qq邮箱或者163邮箱。


    function CheckEmail($email)
    {
        global $dArr;
        $dArr = array(
        '163.com','126.com','sina.com','yahoo.com.cn','yahoo.com','sohu.com','yeah.net','139.com',
        'tom.com','21cn.com','qq.com','foxmail.com','gmail.com','hotmail.com','263.net',
        'vip.qq.com','vip.163.com','vip.sina.com','vip.sina.com.cn','vip.foxmail.com',
        );
        if(empty($email)) return FALSE;
        list($e,$d) = explode('@', $email);
        if(!empty($e) && !empty($d))
        {
            $d = strtolower($d);
            if(!in_array($d,$dArr)) return FALSE;
            return preg_match('/^[a-z0-9]+([\+_\-\.]?[a-z0-9]+)*/i', $e);
        }
        return FALSE;
    }


Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn