首頁 >php教程 >php手册 >PHP 验证邮箱是否合法,正确

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

WBOY
WBOY原創
2016-06-06 19:49:271092瀏覽

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


陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn