php正则表达式验证(邮件地址、Url地址、电话号码、邮政编码)
更新时间:2016年03月14日 17:32:35 作者:郑宏鑫erke
这篇文章主要介绍了php正则表达式验证,实现邮件地址、Url地址、电话号码、邮政编码验证,感兴趣的小伙伴们可以参考一下
本文实例需要验证的内容:邮件地址、Url地址、电话号码、邮政编码,验证方法分享给大家供大家参考,具体内容如下
1、电子邮件地址的校验
<?php
/* 校验邮件地址*/
function checkMail($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地址*/
function checkDomain($domain)
{
return ereg("^(http|ftp)s? ://(www\.)?.+(com|net|org)$", $domain);
}
$rs= checkDomain("www.taodoor.com");//返回假
$rs= checkDomain("http://www.taodoor.com");//返回真
?>
3、电话号码
<?php
/* 校验电话号码*/
function checkTelno($tel)
{
//去掉多余的分隔符
$tel= ereg_replace("[\(\)\. -]", "", $tel);
//仅包含数字,至少应为一个6位的电话号(即没有区号)
if(ereg("^\d+$", $tel))
{
return true;
}else{
return false;
}
}
$rs= checkTelno("(086)-0411-12345678");//返回真
?>
4、邮政编码的校验
<?php
/* 校验邮政编码*/
function checkZipcode($code)
{
//去掉多余的分隔符
$code = preg_replace("/[\. -]/", "", $code);
//包含一个6位的邮政编码
if(preg_match("/^\d{6}$/", $code))
{
return true;
}else{
return false;
}
}
$rs= checkZipCode("123456");//返回真
?>
希望本文所述对大家学习php程序设计有所帮助。
相关文章
php性能分析之php-fpm慢执行日志slow log用法浅析
这篇文章主要介绍了php性能分析之php-fpm慢执行日志slow log用法,结合实例形式分析了php慢执行日志的功能与相关使用技巧,需要的朋友可以参考下2016-10-10
php中将图片gif,jpg或mysql longblob或blob字段值转换成16进制字符串
php如何将图片gif,jpg或mysql longblob或blob字段值转换成16进制字符串!经过查找居然如此简单,一个函数就搞定了。2011-08-08
php中可能用来加密字符串的函数[base64_encode、urlencode、sha1]
做新浪微博自动登录时遇到的,身为一只大大的菜鸟,连登录脚本都是别人写好的自己改装了用上去,到最后才明白那个脚本原来是获取cookie用的,实在是反应迟钝、抑或自己不用心2012-01-01


最新评论