学习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学习笔记 面向对象中[接口]与[多态性]的应用
Jun 16 PHP
如何用php获取程序执行的时间
Jun 09 PHP
深入PHP许愿墙模块功能分析
Jun 25 PHP
IIS6.0中配置php服务全过程解析
Aug 07 PHP
PHP 通过Socket收发十六进制数据的实现代码
Aug 16 PHP
Php连接及读取和写入mysql数据库的常用代码
Aug 11 PHP
php提示Failed to write session data错误的解决方法
Dec 17 PHP
php生成RSS订阅的方法
Feb 13 PHP
浅析PHP中Session可能会引起并发问题
Jul 23 PHP
PHP+MySQL实现的简单投票系统实例
Feb 24 PHP
php+redis实现注册、删除、编辑、分页、登录、关注等功能示例
Feb 15 PHP
PHP For循环字母A-Z当超过26个字母时输出AA,AB,AC
Feb 16 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二维数组转成字符串示例
2014/02/17 PHP
PHP 抽象方法与抽象类abstract关键字介绍及应用
2014/10/16 PHP
PHP实现股票趋势图和柱形图
2015/02/07 PHP
PHP处理会话函数大总结
2015/08/05 PHP
php中二维数组排序问题方法详解
2015/08/28 PHP
详解Yii2 之 生成 URL 的方法
2017/06/16 PHP
微信公众平台开发教程④ ThinkPHP框架下微信支付功能图文详解
2019/04/10 PHP
PHP7生产环境队列Beanstalkd用法详解
2020/05/19 PHP
基于jquery的Repeater实现代码
2010/07/17 Javascript
JavaScript EasyPager 分页函数
2011/05/25 Javascript
一个基于jquery的文本框记数器
2012/09/19 Javascript
JQuery+CSS提示框实现思路及代码(纯手工打造)
2013/05/07 Javascript
JavaScript获取/更改文本框的值的实例代码
2013/08/02 Javascript
Node.js中使用事件发射器模式实现事件绑定详解
2014/08/15 Javascript
JS小游戏之仙剑翻牌源码详解
2014/09/25 Javascript
javascript学习笔记(七)Ajax和Http状态码
2014/10/08 Javascript
js实现模拟计算器退格键删除文字效果的方法
2015/05/07 Javascript
jQuery+CSS实现的标签页效果示例【测试可用】
2018/08/14 jQuery
谈谈React中的Render Props模式
2018/12/06 Javascript
使用Phantomjs和Node完成网页的截屏快照的方法
2019/07/16 Javascript
原生js实现自定义滚动条组件
2021/01/20 Javascript
Python实现合并同一个文件夹下所有PDF文件的方法示例
2018/04/28 Python
Python设计模式之解释器模式原理与用法实例分析
2019/01/10 Python
Django页面数据的缓存与使用的具体方法
2019/04/23 Python
Python3 翻转二叉树的实现
2019/09/30 Python
Java文件与类动手动脑实例详解
2019/11/10 Python
python 利用已有Ner模型进行数据清洗合并代码
2019/12/24 Python
解决django中form表单设置action后无法回到原页面的问题
2020/03/13 Python
Python中使用filter过滤列表的一个小技巧分享
2020/05/02 Python
幼儿园元旦亲子活动方案
2014/02/17 职场文书
公共场所禁烟标语
2014/06/25 职场文书
防灾减灾标语
2014/10/07 职场文书
教师听课评语大全
2014/12/31 职场文书
2015年体育教师个人工作总结
2015/05/12 职场文书
Python 循环读取数据内存不足的解决方案
2021/05/25 Python
小程序wx.getUserProfile接口的具体使用
2021/06/02 Javascript