php用户注册时常用的检验函数实例总结


Posted in PHP onDecember 22, 2014

本文实例总结了php用户注册时常用的检验函数。分享给大家供大家参考。具体分析如下:

php用户注册时常用的一些常用检验函数总结,包括有检测提交的数据是否符合用户名格式,检测参数的值是否相同,检测参数是否为中文,检验邮箱的地址是否正确,检验参数是否为数字等等,这些提交到数据库之前的验证,在正则表达式里面是常用到的了,这里将一些常用的检验参数的类型做个总结,可以整体来用,也可以挑一些常用的来用。

<?php 

/** 

* Check检测类 

*/ 

Class Check{ 

 /** 

 * IsUsername函数:检测是否符合用户名格式 

 * $Argv是要检测的用户名参数 

 * $RegExp是要进行检测的正则语句 

 * 返回值:符合用户名格式返回用户名,不是返回false 

 */ 

 function IsUsername($Argv){ 

  $RegExp=/^[a-zA-Z0-9_]{3,16}$/; //由大小写字母跟数字组成并且长度在3-16字符直接 

  return preg_match($RegExp,$Argv)?$Argv:false; 

 } 

         

 /** 

 * IsMail函数:检测是否为正确的邮件格式 

 * 返回值:是正确的邮件格式返回邮件,不是返回false 

 */ 

 function IsMail($Argv){ 

  $RegExp=/^[a-z0-9][a-z.0-9-_] @[a-z0-9_-] (?:.[a-z]{0,3}.[a-z]{0,2}|.[a-z]{0,3}|.[a-z]{0,2})$/i; 

  return preg_match($RegExp,$Argv)?$Argv:false; 

 } 

 

 /** 

 * IsSmae函数:检测参数的值是否相同 

 * 返回值:相同返回true,不相同返回false 

 */ 

 function IsSame($ArgvOne,$ArgvTwo,$Force=false){ 

  return $Force?$ArgvOne===$ArgvTwo:$ArgvOne==$ArgvTwo; 

 } 

         

 /** 

 * IsQQ函数:检测参数的值是否符合QQ号码的格式 

 * 返回值:是正确的QQ号码返回QQ号码,不是返回false 

 */ 

 function IsQQ($Argv){ 

  $RegExp=/^[1-9][0-9]{5,11}$/; 

  return preg_match($RegExp,$Argv)?$Argv:false; 

 } 

         

 /** 

 * IsMobile函数:检测参数的值是否为正确的中国手机号码格式 

 * 返回值:是正确的手机号码返回手机号码,不是返回false 

 */ 

 function IsMobile($Argv){ 

  $RegExp=/^(?:13|15|18)[0-9]{9}$/; 

  return preg_match($RegExp,$Argv)?$Argv:false; 

 } 

         

 /** 

 * IsTel函数:检测参数的值是否为正取的中国电话号码格式包括区号 

 * 返回值:是正确的电话号码返回电话号码,不是返回false 

 */ 

 function IsTel($Argv){ 

  $RegExp=/[0-9]{3,4}-[0-9]{7,8}$/; 

  return preg_match($RegExp,$Argv)?$Argv:false; 

 } 

         

 /** 

 * IsNickname函数:检测参数的值是否为正确的昵称格式(Beta) 

 * 返回值:是正确的昵称格式返回昵称格式,不是返回false 

 */ 

 function IsNickname($Argv){ 

  $RegExp = '/^s*$|^c:\con\con$|[%,*"st<>&'()]|xA1xA1|xACxA3|^Guest|^xD3xCExBFxCD|xB9x43xABxC8/is'; //Copy From DZ 

  return preg_match($RegExp,$Argv)?$Argv:false; 

 } 

         

 /** 

 * IsChinese函数:检测参数是否为中文 

 * 返回值:是返回参数,不是返回false 

 */ 

 function IsChinese($Argv,$Encoding=utf8){ 

  $RegExp = $Encoding==utf8?/^[x{4e00}-x{9fa5}] $/u:/^([x80-xFF][x80-xFF]) $/; 

  Return preg_match($RegExp,$Argv)?$Argv:False; 

 } 

} 

?>

希望本文所述对大家的PHP程序设计有所帮助。

PHP 相关文章推荐
php 显示指定路径下的图片
Oct 29 PHP
PHP学习之字符串比较和查找
Apr 17 PHP
探讨:如何通过stats命令分析Memcached的内部状态
Jun 14 PHP
浅析php中如何在有限的内存中读取大文件
Jul 02 PHP
PHP管理依赖(dependency)关系工具 Composer 安装与使用
Aug 18 PHP
怎样搭建PHP开发环境
Jul 28 PHP
php获取开始与结束日期之间所有日期的方法
Nov 29 PHP
PHP正则表达式匹配替换与分割功能实例浅析
Feb 04 PHP
laravel 框架配置404等异常页面
Jan 07 PHP
PHP中引用类型和值类型功能与用法示例
Feb 26 PHP
PHP中$GLOBALS与global的区别详解
Mar 21 PHP
Laravel Eloquent ORM 实现查询表中指定的字段
Oct 17 PHP
CentOS6.5 编译安装lnmp环境
Dec 21 #PHP
在SAE上搭建最新wordpress的方法
Dec 21 #PHP
PHP获取当前完整URL地址的函数
Dec 21 #PHP
学习php开源项目的源码指南
Dec 21 #PHP
php数组添加元素方法小结
Dec 20 #PHP
php获取数组元素中头一个数组元素值的实现方法
Dec 20 #PHP
php中http与https跨域共享session的解决方法
Dec 20 #PHP
You might like
php程序的国际化实现方法(利用gettext)
2011/08/14 PHP
PHP实现懒加载的方法
2015/03/07 PHP
最新制作ThinkPHP3.2.3完全开发手册
2015/11/23 PHP
PHP入门教程之会话控制技巧(cookie与session)
2016/09/11 PHP
禁止刷新,回退的JS
2006/11/25 Javascript
论坛里点击别人帖子下面的回复,回复标题变成“回复 24# 的帖子”
2009/06/14 Javascript
js控制div及网页相关属性的代码
2009/12/19 Javascript
Javascript中的匿名函数与封装介绍
2015/03/15 Javascript
js中for in语句的用法讲解
2015/04/24 Javascript
Bootstrap表单布局样式代码
2016/05/31 Javascript
Javascript将数值转换为金额格式(分隔千分位和自动增加小数点)
2016/06/22 Javascript
深入理解JavaScript中的for循环
2017/02/07 Javascript
详解Angular6学习笔记之主从组件
2018/09/05 Javascript
超详细动手搭建一个VuePress 站点及开启PWA与自动部署的方法
2019/01/27 Javascript
Vue基础学习之项目整合及优化
2019/06/02 Javascript
VUE的history模式下除了index外其他路由404报错解决办法
2019/08/21 Javascript
vue遍历对象中的数组取值示例
2019/11/07 Javascript
JavaScript find()方法及返回数据实例
2020/04/30 Javascript
[16:04]DOTA2海涛带你玩炸弹 9月5日更新内容详解
2014/09/05 DOTA
[01:05:56]2018DOTA2亚洲邀请赛3月29日 小组赛A组 Newbee VS VG
2018/03/30 DOTA
python sqlobject(mysql)中文乱码解决方法
2008/11/14 Python
Python查询Mysql时返回字典结构的代码
2012/06/18 Python
30分钟搭建Python的Flask框架并在上面编写第一个应用
2015/03/30 Python
Python实现对百度云的文件上传(实例讲解)
2017/10/21 Python
Python(TensorFlow框架)实现手写数字识别系统的方法
2018/05/29 Python
Python构建图像分类识别器的方法
2019/01/12 Python
为什么从Python 3.6开始字典有序并效率更高
2019/07/15 Python
python 解决pycharm运行py文件只有unittest选项的问题
2020/09/01 Python
android面试问题与答案
2016/12/27 面试题
经典促销广告词大全
2014/03/19 职场文书
令人印象深刻的自荐信
2014/05/25 职场文书
旅游活动总结
2014/08/27 职场文书
党的群众路线教育实践活动总结大会主持词
2014/10/30 职场文书
专职安全员岗位职责
2015/04/11 职场文书
2016领导干部廉洁从政心得体会
2016/01/19 职场文书
spring cloud 配置中心native配置方式
2021/09/25 Java/Android