本文分享一些用于验证email地址的php代码,有需要的朋友,参考学习下吧。
比如,在用户注册程序中,我们经常要检测下输入的邮箱地址是否正确,可以用如下的代码: <?php if (eregi("^[a-zA-Z0-9_]+@[a-zA-Z0-9\-]+\.[a-zA-Z0-9\-\.]+$]", $email)) { return FALSE; } ?> 登入後複製 或者这样: <?php function checkmail($email){ return eregi("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$", $email); } ?> 登入後複製 以上的代码中,只是简单的检测了邮箱格式是否正确,并没有针对具体域名进行检查。 假如要检查类似mailname@domainname.xxx中,@后面的部分。 可以通过检测域名,来更确切地判断邮箱地址是否有效。 代码如下: <?php /** * 通过域名检测邮箱地址的有效性 * edit by bbs.it-home.org * 用到php函数getmxrr与fsockopen */ list($mailusername, $Domainname) = split("@",$myemail); if(getmxrr($Domainname, $MXHost)) { return TRUE; } else { if(fsockopen($Domainname, 25, $errno, $errstr, 30)) { return TRUE; } else { return FALSE; } } ?> 登入後複製 |