学习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下intval()和(int)转换使用与区别
Jul 18 PHP
PHP 文件上传源码分析(RFC1867)
Oct 30 PHP
php设计模式 Interpreter(解释器模式)
Jun 26 PHP
解决php使用异步调用获取数据时出现(错误c00ce56e导致此项操作无法完成)
Jul 03 PHP
获取URL文件名后缀
Oct 24 PHP
PHP模块memcached使用指南
Dec 08 PHP
PHP中使用GD库绘制折线图 折线统计图的绘制方法
Nov 09 PHP
php curl模拟post请求和提交多维数组的示例代码
Nov 19 PHP
PHP中的函数声明与使用详解
May 27 PHP
PHP实现RSA签名生成订单功能【支付宝示例】
Jun 06 PHP
PHP获取数组中单列值的方法
Jun 10 PHP
在laravel中使用Symfony的Crawler组件分析HTML
Jun 19 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
一个连接两个不同MYSQL数据库的PHP程序
2006/10/09 PHP
php cookie 详解使用实例
2016/11/03 PHP
thinkPHP5框架auth权限控制类与用法示例
2018/06/12 PHP
IE和Firefox在JavaScript应用中的兼容性探讨
2008/04/01 Javascript
javascript中的prototype属性实例分析说明
2010/08/09 Javascript
js限制textarea每行输入字符串长度的代码
2012/10/31 Javascript
js判断上传文件的类型和大小示例代码
2013/10/18 Javascript
js 遍历json返回的map内容示例代码
2013/10/29 Javascript
JS二维数组的定义说明
2014/03/03 Javascript
jquery实现实时改变网页字体大小、字体背景色和颜色的方法
2015/08/05 Javascript
zepto中使用swipe.js制作轮播图附swipeUp,swipeDown不起效果问题
2015/08/27 Javascript
jQuery ajaxSubmit 实现ajax提交表单局部刷新
2016/07/04 Javascript
AngularJS使用自定义指令替代ng-repeat的方法
2016/09/17 Javascript
JavaScript在控件上添加倒计时功能的实现代码
2017/07/04 Javascript
vue教程之toast弹框全局调用示例详解
2020/08/24 Javascript
JS伪继承prototype实现方法示例
2018/06/20 Javascript
JavaScript实现异步图像上传功能
2018/07/12 Javascript
Python实现八大排序算法
2016/08/13 Python
python输出数组中指定元素的所有索引示例
2019/12/06 Python
Python爬虫库requests获取响应内容、响应状态码、响应头
2020/01/25 Python
关于Tensorflow使用CPU报错的解决方式
2020/02/05 Python
使用canvas绘制超炫时钟
2014/12/17 HTML / CSS
客房主管岗位职责
2013/12/09 职场文书
初中三好学生事迹材料
2014/01/13 职场文书
《珍珠泉》教学反思
2014/02/20 职场文书
《从现在开始》教学反思
2014/04/15 职场文书
2014年教师节寄语
2014/08/11 职场文书
学前教育专业求职信
2014/09/02 职场文书
群众路线教师自我剖析材料
2014/09/29 职场文书
批评与自我批评范文
2014/10/15 职场文书
2019年入党思想汇报
2019/03/25 职场文书
2019广播稿怎么写
2019/04/17 职场文书
导游词之无锡梅园
2019/11/28 职场文书
php+laravel 扫码二维码签到功能
2021/05/15 PHP
Win11安装升级时提示“该电脑必须支持安全启动”
2022/04/19 数码科技
纯CSS实现一个简单步骤条的示例代码
2022/07/15 HTML / CSS