php正则表达式验证(邮件地址、Url地址、电话号码、邮政编码)
本文实例需要验证的内容:邮件地址、Url地址、电话号码、邮政编码,验证方法分享给大家供大家参考,具体内容如下
1、电子邮件地址的校验
<?php /*校验邮件地址*/ functioncheckMail($email){ //用户名,由“\w”格式字符、“-”或“.”组成 $email_name="\w|(\w[-.\w]*\w)"; //域名中的第一段,规则和用户名类似,不包括点号“.” $code_at="@"; $per_domain="\w|(\w[-\w]*\w)"; //域名中间的部分,至多两段 $mid_domain="(\.".$per_domain."){0,2}"; //域名的最后一段,只能为“.com”、“.org”或“.net” $end_domain="(\.(com|net|org))"; $rs=preg_match( "/^{$email_name}@{$per_domain}{$mid_domain}{$end_domain}$/", $email ); return(bool)$rs; } //测试,下面均返回成功 var_dump(checkMail("root@localhost")); var_dump(checkMail("Frank.Roulan@esun.edu.org")); var_dump(checkMail("Tom.024-1234@x-power_1980.mail-address.com")); ?>
2、URL地址的校验
<?php /*校验URL地址*/ functioncheckDomain($domain) { returnereg("^(http|ftp)s?://(www\.)?.+(com|net|org)$",$domain); } $rs=checkDomain("www.taodoor.com");//返回假 $rs=checkDomain("http://www.taodoor.com");//返回真 ?>
3、电话号码
<?php /*校验电话号码*/ functioncheckTelno($tel) { //去掉多余的分隔符 $tel=ereg_replace("[\(\)\.-]","",$tel); //仅包含数字,至少应为一个6位的电话号(即没有区号) if(ereg("^\d+$",$tel)) { returntrue; }else{ returnfalse; } } $rs=checkTelno("(086)-0411-12345678");//返回真 ?>
4、邮政编码的校验
<?php /*校验邮政编码*/ functioncheckZipcode($code) { //去掉多余的分隔符 $code=preg_replace("/[\.-]/","",$code); //包含一个6位的邮政编码 if(preg_match("/^\d{6}$/",$code)) { returntrue; }else{ returnfalse; } } $rs=checkZipCode("123456");//返回真 ?>
希望本文所述对大家学习php程序设计有所帮助。