欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

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

程序员文章站 2022-05-01 14:43:07
...

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;
    }