php 强力验证邮件地址的函数
内容摘要
这篇文章主要为大家详细介绍了php 强力验证邮件地址的函数,具有一定的参考价值,可以用来参考一下。
为大家讲述一下 php强力验证邮件地址函数,对此感兴趣的朋友,看看idc笔记做
为大家讲述一下 php强力验证邮件地址函数,对此感兴趣的朋友,看看idc笔记做
文章正文
这篇文章主要为大家详细介绍了php 强力验证邮件地址的函数,具有一定的参考价值,可以用来参考一下。
为大家讲述一下 php强力验证邮件地址函数,对此感兴趣的朋友,看看idc笔记做的技术笔记。经测试代码如下:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 | <code class = "php" > <?php /** * 验证邮件地址函数 * * @param * @arrange (www.idcnote.com) **/ function validateEmail( $email ) { $isValid = true; $atIndex = strrpos ( $email , "@" ); if ( is_bool ( $atIndex ) && ! $atIndex ) { $isValid = false; } else { $domain = substr ( $email , $atIndex +1); $local = substr ( $email , 0, $atIndex ); $localLen = strlen ( $local ); $domainLen = strlen ( $domain ); if ( $localLen < 1 || $localLen > 64) { // local part length exceeded $isValid = false; } else if ( $domainLen < 1 || $domainLen > 255) { // domain part length exceeded $isValid = false; } else if ( $local [0] == '.' || $local [ $localLen -1] == '.' ) { // local part starts or ends with '.' $isValid = false; } else if (preg_match( '/\\.\\./' , $local )) { // local part has two consecutive dots $isValid = false; } else if (!preg_match( '/^[A-Za-z0-9\\-\\.]+$/' , $domain )) { // character not valid in domain part $isValid = false; } else if (preg_match( '/\\.\\./' , $domain )) { // domain part has two consecutive dots $isValid = false; } else if (!preg_match( '/^(\\\\.|[A-Za-z0-9!#%&`_=\\/$\'*+?^{}|~.-])+$/' , str_replace ( "\\\\" , "" , $local ))) { // character not valid in local part unless // local part is quoted if (!preg_match( '/^"(\\\\"|[^"])+"$/' , str_replace ( "\\\\" , "" , $local ))) { $isValid = false; } } if ( $isValid && !( checkdnsrr ( $domain , "MX" ) || checkdnsrr ( $domain , "A" ))) { // domain not found in DNS $isValid = false; } } return $isValid ; } /*** 来自php教程(www.idcnote.com) ***/ </code> |
注:关于php 强力验证邮件地址的函数的内容就先介绍到这里,更多相关文章的可以留意
代码注释