验证邮件地址是否合法可以说是程序员最最经常用到的功能,正则表达式的写法也有很多种,本文介绍的函数是从 xoops 摘录而来,该函数除了能够验证邮件地址,还能将地址格式化为防垃圾邮件的字符串。
PHP:
1 <?php
2 // 说明:验证邮件地址并格式化成防垃圾邮件的字符串
3 // 整理:http://www.CodeBit.cn
4
5 function checkEmail($email,$antispam = false)
6 {
7 if (!$email || !preg_match("/^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+([\.][a-z0-9-]+)+$/i",$email)){
8 return false;
9 }
10 if ($antispam) {
11 $email = str_replace("@", " at ", $email);
12 $email = str_replace(".", " dot ", $email);
13 return $email;
14 } else {
15 return true;
16 }
17 }
18
19 echo checkEmail('username@domain.com');
20
21 echo "<br />";
22
23 echo checkEmail('username@domain.com', true);
24 ?>
2 // 说明:验证邮件地址并格式化成防垃圾邮件的字符串
3 // 整理:http://www.CodeBit.cn
4
5 function checkEmail($email,$antispam = false)
6 {
7 if (!$email || !preg_match("/^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+([\.][a-z0-9-]+)+$/i",$email)){
8 return false;
9 }
10 if ($antispam) {
11 $email = str_replace("@", " at ", $email);
12 $email = str_replace(".", " dot ", $email);
13 return $email;
14 } else {
15 return true;
16 }
17 }
18
19 echo checkEmail('username@domain.com');
20
21 echo "<br />";
22
23 echo checkEmail('username@domain.com', true);
24 ?>
上面的代码将输出:
Code:
1
username at domain dot com
浙公网安备 33010602011771号