php常见的验证方法

干货文章

·2018-03-16 23:50:36

 <?php

 /**
* @param $id
* @return false|int
* 检测id
*/
function check_id($id){
return preg_match('/^[1-9][0-9]*$/', $id);
} /**
* @param $mobile
* @return false|int
* 检测手机号格式
*/
function check_mobile($mobile) {
return preg_match('/^1[3|4|5|7|8]\d{9}$/', $mobile);
} /**
* @param $phone
* @return false|int
* 检测电话号码
*/
function check_phone($phone) {
return preg_match ( '/^(0[0-9]{2,3}-?)?[0-9]{7,8}$/', $phone );
} /**
* @param $mobile_phone
* @return bool
* 检测是手机或者电话
*/
function check_contacts($mobile_phone) {
return check_mobile($mobile_phone) || check_phone($mobile_phone);
} /**
* @param $nickname
* @return false|int
* 检测昵称
*/
function check_nickname($nickname){
return preg_match ( "/^[\x{4e00}-\x{9fa5}a-zA-Z0-9_\-\*]+$/u", $nickname );
} /**
* @param $username
* @return false|int
* 检测用户名
*/
function check_username($username){
return preg_match ( "/^[\x{4e00}-\x{9fa5}a-zA-Z0-9_\-\*]+$/u", $username );
} /**
* @param $keyword
* @return false|int
* 检测关键词
*/
function check_keyword($keyword){
return preg_match("/^[\x{4e00}-\x{9fa5}a-zA-Z0-9_-]+$/u" , $keyword);
} /**
* @param $nickname
* @return bool
* 检测昵称可用性
*/
function check_nickname_available($nickname) {
$black_list = array("慕马");
foreach($black_list as $name) {
if(strpos($nickname , $name) !== false) {
return false;
}
}
return true;
} /**
* @param $data
* @return bool
* 检测非空数组
*/
function check_array($data){
return !empty($data) && is_array($data);
} /**
* @param $str
* @param string $separate
* @return false|int
* 检测是否是数字+分割服间断,如:1#2#3
*/
function check_number_separate($str,$separate = '#'){
return preg_match("/^(\d+)({$separate}(\d)+)*$/u",$str);
} /**
* @param $date
* @param string $format
* @return bool
* 检测是否符合指定格式的日期字符串
*/
function check_date($date,$format = 'Y-m-d H:i:s'){
return $date == date($format,strtotime($date));
} /**
* @param $email
* @return false|int
* 验证邮箱
*/
function check_email($email){
return preg_match ( '/^[0-9a-zA-Z_][-_\.0-9a-zA-Z]{0,63}@([0-9a-z][0-9a-z-]*\.)+[a-z]{2,4}$/', $email);
}

php常见的验证方法的更多相关文章

  1. Spring Security验证流程剖析及自定义验证方法

    Spring Security的本质 Spring Security本质上是一连串的Filter, 然后又以一个独立的Filter的形式插入到Filter Chain里,其名为FilterChainP ...

  2. SQLMAP注入教程-11种常见SQLMAP使用方法详解

    sqlmap也是渗透中常用的一个注入工具,其实在注入工具方面,一个sqlmap就足够用了,只要你用的熟,秒杀各种工具,只是一个便捷性问题,sql注入另一方面就是手工党了,这个就另当别论了.今天把我一直 ...

  3. [转]11种常见sqlmap使用方法详解

    sqlmap也是渗透中常用的一个注入工具,其实在注入工具方面,一个sqlmap就足够用了,只要你用的熟,秒杀各种工具,只是一个便捷性问题,sql注入另一方面就是手工党了,这个就另当别论了.今天把我一直 ...

  4. Tomcat安装教程及常见错误解决方法

    目录 Tomcat安装教程及常见错误解决方法 一.安装前准备 ·熟悉自己电脑的操作系统版本(32位or64位) ·保证电脑上已经装好JDK,并且已经设置好环境变量. 二.Tomcat安装教程(以Tom ...

  5. Android中ListView的几种常见的优化方法

    Android中的ListView应该算是布局中几种最常用的组件之一了,使用也十分方便,下面将介绍ListView几种比较常见的优化方法: 首先我们给出一个没有任何优化的Listview的Adapte ...

  6. 基于 Token 的身份验证方法

    使用基于 Token 的身份验证方法,在服务端不需要存储用户的登录记录.大概的流程是这样的: 客户端使用用户名跟密码请求登录 服务端收到请求,去验证用户名与密码 验证成功后,服务端会签发一个 Toke ...

  7. validate插件深入学习-04自定义验证方法

    自定义验证方法 jQuery.validator.addMethod(name,method,[,message]) name: 方法名 method: function(value,element, ...

  8. 基于 Annotation 拦截的 Spring AOP 权限验证方法

    基于 Annotation 拦截的 Spring AOP 权限验证方法 转自:http://www.ibm.com/developerworks/cn/java/j-lo-springaopfilte ...

  9. 理解 OpenStack + Ceph (7): Ceph 的基本操作和常见故障排除方法

    本系列文章会深入研究 Ceph 以及 Ceph 和 OpenStack 的集成: (1)安装和部署 (2)Ceph RBD 接口和工具 (3)Ceph 物理和逻辑结构 (4)Ceph 的基础数据结构 ...

随机推荐

  1. 封装一个Js 对象 生成Json

    <script src="~/Content/Scripts/jquery-1.11.3.min.js"></script> <script> ...

  2. [转]Linux Shell编程入门

    转自:http://www.cnblogs.com/suyang/archive/2008/05/18/1201990.html 从程序员的角度来看, Shell本身是一种用C语言编写的程序,从用户的 ...

  3. 0xC0000005: 写入位置 0x00000000 时发生访问冲突的解决办法(转)

    上面的意识就是你吧值付给了不该赋给的变量,或者说你把值付给了不能付给的变量(或者常量) ()最简单也最直接的错误可能就是scanf()的问题,我们都知道输入的时候都是scanf("%格式&q ...

  4. 【串线篇】idea下的springboot入门配置

    1.Spring Boot 简介 简化Spring应用开发的一个框架: 整个Spring技术栈的一个大整合: J2EE开发的一站式解决方案: 2.微服务 2014,martin fowler 微服务: ...

  5. sqoop 数据导入hive

    一. sqoop: mysql->hive sqoop import -m 1 --hive-import --connect "jdbc:mysql://127.0.0.1:3306 ...

  6. python 控制终端执行的subprocess.getoutput函数

    devices = subprocess.getoutput('ios-deploy -c') print(devices) 如上代码中,subprocess.getoutput函数首先在终端执行命令 ...

  7. bean的初始化和销毁方法

    1.bean的生命周期: bean创建---初始化----销毁的过程 容器管理bean的生命周期: 我们可以自定义初始化和销毁方法:容器在bean进行到当前生命周期的时候来调用我们自定义的初始化和销毁 ...

  8. Spring Boot和Spring Cloud学习资源推荐

    Spring Boot和Spring Cloud学习资源推荐   比较好的学习资源,分享一下. 1.Spring Boot官方文档:http://projects.spring.io/spring-b ...

  9. feign学习

    feign集成了ribbon,只需要新建接口加注解即可 <!--feign相关--> <dependency> <groupId>org.springframewo ...

  10. JVM 和JMM的区别

    首先从定义上看 JVM (Java Virtual Machine)Java虚拟机模型 主要描述的是Java虚拟机内部的结构以及各个结构之间的关系. JMM(Java Memory Model) Ja ...