用PHP来验证Email是否正确
发布时间:2022-07-26 09:55:31 所属栏目:PHP教程 来源:互联网
导读:当你在某个论坛上注册时,通常都有一个 e-mail 地址验证的功能,当你输入非法的一个格式时会出现某种错误提示信息的,我们可以使用下面的规则表达式: ereg(^[a-zA-Z0-9_] @[a-zA-Z0-9-] .[a-zA-Z0-9-.] $], $email); 但是上面这个式子的功能是只能检查字符串
当你在某个论坛上注册时,通常都有一个 e-mail 地址验证的功能,当你输入非法的一个格式时会出现某种错误提示信息的,我们可以使用下面的规则表达式: ereg("^[a-zA-Z0-9_] @[a-zA-Z0-9-] .[a-zA-Z0-9-.] $]", $email); 但是上面这个式子的功能是只能检查字符串,不能进行输出。我们可以进一步利用这个式子来达到返回信息的功能: if (eregi("^[a-zA-Z0-9_] @[a-zA-Z0-9-] .[a-zA-Z0-9-.] $]", $email)) { return FALSE; } 下面我们可以进一步来检测主机名,是不是存在: list($Username, $Domain) = split("@",$email); if(getmxrr($Domain, $MXHost)) { return TRUE; } else { if(fsockopen($Domain, 25, $errno, $errstr, 30)) { return TRUE; } else { return FALSE; } } 现在我们再把上面的两个功能用PHP组织起来构成一个函数: function checkEmail($email) { if(eregi("^[a-zA-Z0-9_] @[a-zA-Z0-9-] .[a-zA-Z0-9-.] $]", $email)) { return FALSE; } list($Username, $Domain) = split("@",$email); if(getmxrr($Domain, $MXHost)) { return TRUE; } else { if(fsockopen($Domain, 25, $errno, $errstr, 30)) { return TRUE; } else { return FALSE; } } } 之后我们就可以利用这个函数来检测是否存在输入的一个Email了,举个例子: if(checkEmail(web@etoow.com) == FALSE) { echo "您输入的E_mail是不正确的."; } else { echo "输入的E_mail是正确的."; } ![]() (编辑:济源站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |