学习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新手上路(三)
Oct 09 PHP
php实现的仿阿里巴巴实现同类产品翻页
Dec 11 PHP
php连接函数implode与分割explode的深入解析
Jun 26 PHP
PHP以指定字段为索引返回数据库所取的数据数组
Jun 30 PHP
PHP中实现生成静态文件的方法缓解服务器压力
Jan 07 PHP
Php中使用Select 查询语句的实例
Feb 19 PHP
php写入、删除与复制文件的方法
Jun 20 PHP
PHP实现HTML页面静态化的方法
Nov 04 PHP
变量在 PHP7 内部的实现(二)
Dec 21 PHP
WordPress中使主题支持小工具以及添加插件启用函数
Dec 22 PHP
Thinkphp5.0 框架视图view的比较标签用法分析
Oct 12 PHP
gearman管理工具GearmanManager的安装与php使用方法示例
Feb 27 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自动适应范围的分页代码
2008/08/05 PHP
基于magic_quotes_gpc与magic_quotes_runtime的区别与使用介绍
2013/04/22 PHP
PHPMailer发送邮件
2016/12/28 PHP
一个对于Array的简单扩展
2006/10/03 Javascript
js获取提交的字符串的字节数
2009/02/09 Javascript
javascript面向对象的方式实现的弹出层效果代码
2010/01/28 Javascript
js 小贴士一星期合集
2010/04/07 Javascript
基于jquery的图片懒加载js
2010/06/30 Javascript
js取两个数组的交集|差集|并集|补集|去重示例代码
2013/08/07 Javascript
jquery $.each()使用探讨
2013/09/23 Javascript
jquery中$(#form :input)与$(#form input)的区别
2014/08/18 Javascript
JavaScript不刷新实现浏览器的前进后退功能
2014/11/05 Javascript
简述AngularJS的控制器的使用
2015/06/16 Javascript
laypage分页控件使用实例详解
2016/05/19 Javascript
JS当前页面登录注册框,固定DIV,底层阴影的实例代码
2016/09/29 Javascript
Babel 入门教程学习笔记
2018/06/13 Javascript
微信小程序之onLaunch与onload异步问题详解
2019/03/28 Javascript
详解VUE前端按钮权限控制
2019/04/26 Javascript
echarts.js 动态生成多个图表 使用vue封装组件操作
2020/07/19 Javascript
基于Vue全局组件与局部组件的区别说明
2020/08/11 Javascript
Vue Object.defineProperty及ProxyVue实现双向数据绑定
2020/09/02 Javascript
Vue.js原理分析之nextTick实现详解
2020/09/07 Javascript
jQuery实现简单弹幕制作
2020/12/10 jQuery
[03:54]DOTA2英雄梦之声_第06期_昆卡
2014/06/23 DOTA
python数据库操作常用功能使用详解(创建表/插入数据/获取数据)
2013/12/06 Python
Windows8下安装Python的BeautifulSoup
2015/01/22 Python
利用Python获取操作系统信息实例
2016/09/02 Python
python3读取MySQL-Front的MYSQL密码
2017/05/03 Python
关于django 数据库迁移(migrate)应该知道的一些事
2018/05/27 Python
Python常用爬虫代码总结方便查询
2019/02/25 Python
HTML5 body设置自适应全屏
2020/05/07 HTML / CSS
人力资源专员自我评价怎么写
2013/09/19 职场文书
医学院四年学习生活的自我评价
2013/11/06 职场文书
小区保洁员岗位职责
2015/04/10 职场文书
养成教育工作总结
2015/08/13 职场文书
小米11和iphone12哪个值得买?小米11对比iphone12评测
2021/04/21 数码科技