学习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 06 PHP
php生成略缩图代码
Jul 16 PHP
关于Zend Studio 配色方案插件的介绍
Jun 24 PHP
php的数组与字符串的转换函数整理汇总
Jul 18 PHP
PHP判断远程图片是否存在的几种方法
May 04 PHP
PHP多态代码实例
Jun 26 PHP
PHP SPL 被遗落的宝石【SPL应用浅析】
Apr 20 PHP
PHP将整数数字转换为罗马数字实例分享
Mar 17 PHP
浅谈thinkphp的nginx配置,以及重写隐藏index.php入口文件方法
Oct 12 PHP
浅谈PHP array_search 和 in_array 函数效率问题
Oct 15 PHP
Laravel 手动开关 Eloquent 修改器的操作方法
Dec 30 PHP
PHP ob缓存以及ob函数原理实例解析
Nov 13 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单一接口的实现方法
2015/06/20 PHP
js 效率组装字符串 StringBuffer
2009/12/23 Javascript
js判断选择时间不能小于当前时间的示例代码
2013/09/24 Javascript
js实现连个数字相加而不是拼接的方法
2014/02/23 Javascript
对table和ul实现js分页示例分享
2014/02/24 Javascript
Js实现动态添加删除Table行示例
2014/04/14 Javascript
javascript基于HTML5 canvas制作画箭头组件
2014/06/25 Javascript
基于jquery实现的自动补全功能
2015/03/12 Javascript
jQuery判断元素上是否绑定了指定事件的方法
2015/03/17 Javascript
每天一篇javascript学习小结(基础知识)
2015/11/10 Javascript
js实现无缝循环滚动
2020/06/23 Javascript
详解XMLHttpRequest(二)响应属性、二进制数据、监测上传下载进度
2016/09/14 Javascript
浅谈javascript的闭包
2017/01/23 Javascript
JS回调函数简单用法示例
2017/02/09 Javascript
jquery 输入框查找关键字并提亮颜色的实例代码
2018/01/23 jQuery
微信小程序性能优化之checkSession的使用
2019/03/06 Javascript
layui table 表格模板按钮的实例代码
2019/09/21 Javascript
[48:48]2014 DOTA2国际邀请赛中国区预选赛 SPD-GAMING VS Dream TIME
2014/05/21 DOTA
Python使用cx_Oracle模块将oracle中数据导出到csv文件的方法
2015/05/16 Python
python merge、concat合并数据集的实例讲解
2018/04/12 Python
python树莓派红外反射传感器
2019/01/21 Python
Pandas库之DataFrame使用的学习笔记
2019/06/21 Python
解决pycharm运行程序出现卡住scanning files to index索引的问题
2019/06/27 Python
Python学习笔记之lambda表达式用法详解
2019/08/08 Python
python协程gevent案例 爬取斗鱼图片过程解析
2019/08/27 Python
Python生成验证码、计算具体日期是一年中的第几天实例代码详解
2019/10/16 Python
Python基本类型的连接组合和互相转换方式(13种)
2019/12/16 Python
pyecharts动态轨迹图的实现示例
2020/04/17 Python
keras 权重保存和权重载入方式
2020/05/21 Python
利用python3筛选excel中特定的行(行值满足某个条件/行值属于某个集合)
2020/09/04 Python
call在Python中改进数列的实例讲解
2020/12/09 Python
澳大利亚便宜的家庭购物网站:CrazySales
2018/02/06 全球购物
捷克鲜花配送:Florea.cz
2018/10/29 全球购物
英文简历自荐信范文
2013/12/11 职场文书
《巨人的花园》教学反思
2016/02/19 职场文书
apache ftpserver搭建ftp服务器
2022/05/20 Servers