PHP正则验证类(PHP5)
时间:2007-06-01
来源:互联网
[email protected]
PHP代码:
<?php
/**
*PHP正则验证类
*Code by T.T.R
*[url]http://www.Gx3.cn[/url] [url]http://Gx3.cn[/url]
*QQ:252319874
*/
class regExp
{
//去除字符串空格
static function strTrim($str)
{
return preg_replace("/\s/","",$str);
}
//验证用户名
static function userName($str,$type,$len)
{
$str=self::strTrim($str);
if($len<strlen($str))
{
return false;
}else{
switch($type)
{
case "EN"://纯英文
if(preg_match("/^[a-zA-Z]+$/",$str))
{
return true;
}else{
return false;
}
break;
case "ENNUM"://英文数字
if(preg_match("/^[a-zA-Z0-9]+$/",$str))
{
return true;
}else{
return false;
}
break;
case "ALL": //允许的符号(|-_字母数字)
if(preg_match("/^[\|\-\_a-zA-Z0-9]+$/",$str))
{
return true;
}else{
return false;
}
break;
}
}
}
//验证密码长度
static function passWord($min,$max,$str)
{
$str=self::strTrim($str);
if(strlen($str)>=$min && strlen($str)<=$max)
{
return true;
}else{
return false;
}
}
//验证Email
static function Email($str)
{
$str=self::strTrim($str);
if(preg_match("/^([a-z0-9_]|\\-|\\.)+@(([a-z0-9_]|\\-)+\\.){1,2}[a-z]{2,4}$/i",$str))
{
return true;
}else{
return false;
}
}
//验证身份证(中国)
static function idCard($str)
{
$str=self::strTrim($str);
if(preg_match("/^([0-9]{15}|[0-9]{17}[0-9a-z])$/i",$str))
{
return true;
}else{
return false;
}
}
//验证座机电话
static function Phone($type,$str)
{
$str=self::strTrim($str);
switch($type)
{
case "CHN":
if(preg_match("/^([0-9]{3}|0[0-9]{3})-[0-9]{7,8}$/",$str))
{
return true;
}else{
return false;
}
break;
case "INT":
if(preg_match("/^[0-9]{4}-([0-9]{3}|0[0-9]{3})-[0-9]{7,8}$/",$str))
{
return true;
}else{
return false;
}
break;
}
}
}
$str="008-010-2711204";
if(regExp::Phone("INT",$str))
{
echo "ok";
}else{
echo "no";
}
?>
作者: T.T.R 发布时间: 2007-06-01

作者: changxilong 发布时间: 2007-06-01
作者: dmkf 发布时间: 2007-06-02
作者: thaiki 发布时间: 2007-06-02
个人认为还是发一些javascript的相关正则比较实用.
作者: quanhaier 发布时间: 2007-06-07
作者: emyshen 发布时间: 2007-06-07
作者: xlight 发布时间: 2007-06-07
作者: forest 发布时间: 2007-06-07
作者: VE 发布时间: 2007-06-08
引用:
原帖由 emyshen 于 2007-6-7 04:52 PM 发表前端的验证相对于安全性来说比较低吧!
简单实用的好东西 支持 拿来用或者学习都很好
作者: wind840619 发布时间: 2007-07-19
引用:
原帖由 quanhaier 于 2007-6-7 10:55 发表有一事不明,这种验证为什么不用javascript做,把变量传到服务器端做验证不加重服务器负担么?而且视觉上会有延迟,就算用ajax能缓解视觉上的时间延迟,可是还是部分的加重了服务器的负担
个人认为还是发一些javasc ...
作者: bigname 发布时间: 2008-01-07
引用:
原帖由 quanhaier 于 2007-6-7 10:55 发表有一事不明,这种验证为什么不用javascript做,把变量传到服务器端做验证不加重服务器负担么?而且视觉上会有延迟,就算用ajax能缓解视觉上的时间延迟,可是还是部分的加重了服务器的负担
个人认为还是发一些javasc ...
http://www.phpchina.com/bbs/viewthread.php?tid=27609
作者: T.T.R 发布时间: 2008-01-10
作者: hu_bird 发布时间: 2008-01-15
作者: j59280871 发布时间: 2008-02-18
作者: ct_174880859 发布时间: 2008-02-20
作者: 清竹�w翔 发布时间: 2008-03-27
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28