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. Vue-router路由的简单使用

    一.安装路由: 如果使用vue-cli脚手架搭建,项目创建过程中会提示你自否选择使用vue-router,选择使用即可, 二.创建组件 1.vue-cli项目自动创建的路由文件是src包下面的rout ...

  2. html中代替空格、大于号、小于号等字符编码

    数字表示法的不方便之处,在于必须知道每个字符的码点,很难记忆.为了能够快速输入,HTML 为一些特殊字符,规定了容易记忆的名字,允许通过名字来表示它们,这称为实体表示法(entity). 实体的写法是 ...

  3. Linux运维常用脚本整理

    .查找当前目录下占用为0字节的文件并删除 find ./ -type f -size -exec rm -rf {}\;    #此命令不要用于对根目录0字节文件的操作 .将系统进程按内存占用大小排列 ...

  4. 转载:java面试题(一)

    1.面向对象的特征有哪些方面? 答:面向对象的特征主要有以下几个方面: - 抽象:抽象是将一类对象的共同特征总结出来构造类的过程,包括数据抽象和行为抽象两方面.抽象只关注对象有哪些属性和行为,并不关注 ...

  5. zabbix自带database monitor

    1. 在zabbix服务器上安装一下两个包: # yum -y install unixODBC mysql-connector-odbc 2. 修改zabbix服务器上ODBC配置: 2.1 Vim ...

  6. Linux文本处理三剑客之——grep

    一Linux文本处理三剑客之——grep Linux文本处理三剑客都支持正则表达式 grep :文本过滤( 模式:pattern) 工具,包括grep, egrep, fgrep (不支持正则表达式) ...

  7. c#处理3种json数据的方式

    原文出处:http://www.jb51.net/article/48027.htm 一.C#处理简单json数据 json数据: {"result":"0", ...

  8. HTTP协议-Headers

    Request headers 1 Accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8 ...

  9. [CSP-S模拟测试]:金(king)(高精度+模拟)

    题目传送门(内部题36) 输入格式 第一行一个整数$T$,表示数据组数. 接下来$T$行,每行两个空格隔开的整数$n,m$. 输出格式 对于每组数据,输出一行$"Yes"$或$&q ...

  10. 团队冲刺DAY4

    DES算法 算法概要 在DES.java当中创立两个方法分别用作加密和解密 通过 `public static byte[] encrypt(byte[] data, String sKey) 创建方 ...