Heim  >  Artikel  >  Backend-Entwicklung  >  php 验证email地址的方法分享

php 验证email地址的方法分享

WBOY
WBOYOriginal
2016-07-25 08:56:51877Durchsuche
本文分享一些用于验证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; 
   }
}
?>


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn