位置:首页 > 网络编程 > PHP笔记
PHP 验证Email是否正确的简单示例
日期:2023-01-09 人气:

大家好,对用PHP来验证Email是否正确感兴趣的小伙伴,下面一起跟随三零脚本的小编来看看用PHP来验证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)) {
returnFALSE; }

下面我们可以进一步来检测主机名,是不是存在:

list($Username,$Domain)=split("@",$email); if(getmxrr($Domain,$MXHost))
{ returnTRUE;
} else
{ if(fsockopen($Domain,25,$errno,$errstr,30))
{ returnTRUE;
} else
{ returnFALSE;
} }

现在我们再把上面的两个功能用PHP组织起来构成一个函数:

functioncheckEmail($email)
{if(eregi("^[a-zA-Z0-9_]@[a-zA-Z0-9-].[a-zA-Z0-9-.]$]",$email)) {
returnFALSE; }
list($Username,$Domain)=split("@",$email);
if(getmxrr($Domain,$MXHost))
{ returnTRUE;
} else
{ if(fsockopen($Domain,25,$errno,$errstr,30))
{ returnTRUE;
} else
{ returnFALSE;
} }
}

之后我们就可以利用这个函数来检测是否存在输入的一个Email了,举个例子:

if(checkEmail(web@etoow.com)==FALSE) {
echo"您输入的E_mail是不正确的."; }
else {
echo"输入的E_mail是正确的."; }