php正则表达式验证(邮件地址、Url地址、电话号码、邮政编码)

yipeiwu_com6年前PHP代码库

本文实例需要验证的内容:邮件地址、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微信开发之自定义菜单实现

编辑模式和开发模式是有冲突的。所以我们启用微信公众号的开发模式之后,那些菜单是看不到的哦。不过现在个人订阅号是不可以使用高级开发者模式的,如自定义菜单,不过我们还是可以通过测试号来测试一...

深入解析PHP的Laravel框架中的event事件操作

 有时候当我们单纯的看 Laravel 手册的时候会有一些疑惑,比如说系统服务下的授权和事件,这些功能服务的应用场景是什么,其实如果没有经历过一定的开发经验有这些疑惑是很正常的...

PHP编程实现微信企业向用户付款的方法示例

本文实例讲述了PHP编程实现微信企业向用户付款的方法。分享给大家供大家参考,具体如下: <?php header('content-type:text/html;cha...

mcrypt启用 加密以及解密过程详细解析

Mcrypt扩展库可以实现加密解密功能,就是既能将明文加密,也可以密文还原。 1.PHP加密扩展库Mcrypt安装在标准的PHP安装过程中并没有把Mrcypt安装上,但PHP的主目录下包...

PHP使用OB缓存实现静态化功能示例

本文实例讲述了PHP使用OB缓存实现静态化功能。分享给大家供大家参考,具体如下: 实现步骤 1、创建测试数据表并且写入数据 2、实现后台的更新操作。使用OB缓存针对每一个内容生成对应的H...