学习thinkphp5.0验证类使用方法


Posted in PHP onNovember 16, 2017

通过一个实例,给大家讲解一下如果通过thinkphp5.0验证类的方法。

自定义验证类,需继承Validate类

比如在home模块新建validate文件夹,再新建Test.php验证类,内容如下:

<?php
namespace app\home\validate;
use think\Validate;
class Test extends Validate
{
  protected $rule = [
    'name' => 'require|regex:/.{6}/',
    'age' => 'number|between:1,120',
    'email' => 'email'
  ];
  protected $message = [
    'name.require' => 'name不能少',
    'name.regex' => 'name不能少于6个字符',
    'age.number' => 'age必须是数字',
    'age.between' => 'age必须在1到120之间',
    'email.email' => 'email格式不对',
  ];
  protected $scene = [
    'name_email' => ['name','email'],
  ];
}
?>

在Index控制器test方法使用

<?php
namespace app\home\controller;
use think\Loader;
use think\Controller;
class Index extends Controller
{
  public function test(){
    $date = [
      'name'=>'qw2e',
      'email'=>'12313'
    ];
    //$validate = Loader::validate('Test');//使用加载类Loader
    $validate = validate('Test');//使用助手函数
    $result = $validate->scene('name_email')->check($date);
    if(!$result){
      dump($validate->getError());
    }
  }
}

以上就是我们给出的验证类的实例方法,如果还有哪里不明白,大家可以在下方留言一起讨论。

PHP 相关文章推荐
php 用sock技术发送邮件的函数
Jul 21 PHP
常用的php ADODB使用方法集锦
Mar 25 PHP
thinkphp 多表 事务详解
Jun 17 PHP
解析:使用php mongodb扩展时 需要注意的事项
Jun 18 PHP
PHP也能干大事 随机函数
Apr 14 PHP
Zend Framework教程之Zend_Config_Ini用法分析
Mar 23 PHP
PHP模块化安装教程
Jun 01 PHP
php插入含有特殊符号数据的处理方法
Nov 24 PHP
简单实现PHP留言板功能
Dec 21 PHP
PHP扩展mcrypt实现的AES加密功能示例
Jan 29 PHP
PHP使用PDO操作sqlite数据库应用案例
Mar 07 PHP
Linux下源码包安装Swoole及基本使用操作图文详解
Apr 02 PHP
thinkPHP中钩子的使用方法实例分析
Nov 16 #PHP
php表单处理操作
Nov 16 #PHP
ThinkPHP实现转换数据库查询结果数据到对应类型的方法
Nov 16 #PHP
Laravel下生成验证码的类
Nov 15 #PHP
Ajax中的JSON格式与php传输过程全面解析
Nov 14 #PHP
PHP基于imagick扩展实现合成图片的两种方法【附imagick扩展下载】
Nov 14 #PHP
Laravel Intervention/image图片处理扩展包的安装、使用与可能遇到的坑详解
Nov 14 #PHP
You might like
php实现的ping端口函数实例
2014/11/12 PHP
PHP中文竖排转换实现方法
2015/10/23 PHP
PHP制作用户注册系统
2015/10/23 PHP
Sample script that deletes a SQL Server database
2007/06/16 Javascript
Javascript 遍历对象中的子对象
2009/07/03 Javascript
基于jquery用于查询操作的实现代码
2010/05/10 Javascript
javascript的原生方法获取数组中的最大(最小)值
2012/12/19 Javascript
jquery等宽输出文字插件使用介绍
2013/09/18 Javascript
原生JavaScript生成GUID的实现示例
2014/09/05 Javascript
什么是 AngularJS?AngularJS简介
2014/12/06 Javascript
javascript 兼容各个浏览器的事件
2015/02/04 Javascript
jQuery对象和DOM对象之间相互转换的方法介绍
2015/02/28 Javascript
基于jquery实现全屏滚动效果
2015/11/26 Javascript
javascript之Boolean类型对象
2016/06/07 Javascript
浅谈addEventListener和attachEvent的区别
2016/07/14 Javascript
AngularJS ng-app 指令实例详解
2016/07/30 Javascript
EasyUI修改DateBox和DateTimeBox的默认日期格式示例
2017/01/18 Javascript
bootstrap的工具提示实例代码
2017/05/17 Javascript
深入理解vue $refs的基本用法
2017/07/13 Javascript
浅谈js的解析顺序 作用域 严格模式
2017/10/23 Javascript
ES6 javascript中Class类继承用法实例详解
2017/10/30 Javascript
基于NodeJS开发钉钉回调接口实现AES-CBC加解密
2020/08/20 NodeJs
[02:05]2014DOTA2国际邀请赛 BBC外卡赛赛后总结
2014/07/09 DOTA
在Python3中初学者应会的一些基本的提升效率的小技巧
2015/03/31 Python
在服务器端实现无间断部署Python应用的教程
2015/04/16 Python
python3实现公众号每日定时发送日报和图片
2018/02/24 Python
使用numpy和PIL进行简单的图像处理方法
2018/07/02 Python
python使用numpy读取、保存txt数据的实例
2018/10/14 Python
pytorch之Resize()函数具体使用详解
2020/02/27 Python
python 装饰器重要在哪
2021/02/14 Python
美国彩妆品牌:Coastal Scents
2017/04/01 全球购物
竞聘演讲稿精彩开头和结尾
2014/05/14 职场文书
2014年小学校长工作总结
2014/12/08 职场文书
2015年护士工作总结范文
2015/03/31 职场文书
Element实现动态表格的示例代码
2021/08/02 Javascript
Springboot如何同时装配两个相同类型数据库
2021/11/17 Java/Android