学习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如何抛出异常处理错误
Mar 02 PHP
PHP explode()函数用法、切分字符串
Oct 03 PHP
CI(CodeIgniter)框架介绍
Jun 09 PHP
PHP面向对象程序设计之接口用法
Aug 20 PHP
自编函数解决pathinfo()函数处理中文问题
Nov 03 PHP
php使用ZipArchive函数实现文件的压缩与解压缩
Oct 27 PHP
ThinkPHP连接Oracle数据库
Apr 22 PHP
对比PHP对MySQL的缓冲查询和无缓冲查询
Jul 01 PHP
解决laravel 5.1报错:No supported encrypter found的办法
Jun 07 PHP
PHP面向对象五大原则之依赖倒置原则(DIP)详解
Apr 08 PHP
PHP封装的简单连接MongoDB类示例
Feb 13 PHP
thinkPHP5框架实现多数据库连接,跨数据连接查询操作示例
May 29 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
推荐几部必看的DC动画电影
2020/03/03 欧美动漫
适用于初学者的简易PHP文件上传类
2015/10/29 PHP
php正则去除网页中所有的html,js,css,注释的实现方法
2016/11/03 PHP
PHP面向对象程序设计高级特性详解(接口,继承,抽象类,析构,克隆等)
2016/12/02 PHP
FCK调用方法..
2006/12/21 Javascript
ExtJS Grid使用SimpleStore、多选框的方法
2009/11/20 Javascript
JavaScript中获取元素索引的函数
2010/09/10 Javascript
基于jQuery的输入框在光标位置插入内容, 并选中
2011/10/29 Javascript
Extjs4 类的定义和扩展实例
2013/06/28 Javascript
jquery弹出层类代码分享
2013/12/27 Javascript
使用jQuery+EasyUI实现CheckBoxTree的级联选中特效
2015/12/06 Javascript
jQuery AjaxUpload 上传图片代码
2016/02/02 Javascript
js判断PC端与移动端跳转
2020/12/24 Javascript
Node.JS文件系统解析实例详解
2017/05/15 Javascript
Angular 4依赖注入学习教程之组件服务注入(二)
2017/06/04 Javascript
原生JavaScript实现的简单放大镜效果示例
2018/02/07 Javascript
小程序图片剪裁加旋转的示例代码
2018/07/10 Javascript
JavaScript数组特性与实践应用深入详解
2018/12/30 Javascript
node.js ws模块搭建websocket服务端的方法示例
2019/04/25 Javascript
TypeScript之调用栈的实现
2019/12/31 Javascript
vue自动添加浏览器兼容前后缀操作
2020/08/13 Javascript
Python+django实现简单的文件上传
2016/08/17 Python
Django日志模块logging的配置详解
2017/02/14 Python
Python找出最小的K个数实例代码
2018/01/04 Python
django实现更改数据库某个字段以及字段段内数据
2020/03/31 Python
python中rc1什么意思
2020/06/19 Python
Python基础教程(一)——Windows搭建开发Python开发环境
2020/07/20 Python
Python 数据的累加与统计的示例代码
2020/08/03 Python
python中的测试框架
2020/11/13 Python
英国工具中心:UK Tool Centre
2017/07/10 全球购物
工作自荐信
2013/12/11 职场文书
周鸿祎:教你写创业计划书
2013/12/30 职场文书
联片教研活动总结
2014/07/01 职场文书
幼儿园庆元旦主持词
2015/07/06 职场文书
2019年第四季度财务部门工作计划
2019/11/02 职场文书
SpringBoot生成License的实现示例
2021/06/16 Java/Android