学习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 相关文章推荐
兼容PHP5的PHP目录管理函数库
Jul 10 PHP
php url地址栏传中文乱码解决方法集合
Jun 25 PHP
浅谈PHP变量作用域以及地址引用问题
Dec 27 PHP
PHP、Nginx、Apache中禁止网页被iframe引用的方法
Oct 01 PHP
浅谈PHP中单引号和双引号到底有啥区别呢?
Mar 04 PHP
PHP 绘制网站登录首页图片验证码
Apr 12 PHP
php flush无效,IIS7下php实时输出的方法
Aug 25 PHP
php5.2的curl-bug 服务器被php进程卡死问题排查
Sep 19 PHP
PHP符合PSR编程规范的实例分享
Dec 21 PHP
thinkphp5 migrate数据库迁移工具
Feb 20 PHP
PHP基于phpqrcode类生成二维码的方法示例详解
Aug 07 PHP
PHP dirname(__FILE__)原理及用法解析
Oct 28 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下把数组保存为文件格式的实例应用
2010/02/08 PHP
PHP+AJAX 投票器功能
2017/11/11 PHP
PHP pthreads v3在centos7平台下的安装与配置操作方法
2020/02/21 PHP
Ext grid 添加右击菜单
2009/11/26 Javascript
编写可维护面向对象的JavaScript代码[翻译]
2011/02/12 Javascript
在其他地方你学不到的jQuery小贴士和技巧(欢迎收藏)
2016/01/20 Javascript
Node.js 应用跑得更快 10 个技巧
2016/04/03 Javascript
jQuery插件zTree实现的多选树效果示例
2017/03/08 Javascript
BootStrap selectpicker后台动态绑定数据的方法
2017/07/28 Javascript
详解A标签中href=&quot;&quot;的几种用法
2017/08/20 Javascript
Vue+Vux项目实践完整代码
2017/11/30 Javascript
详解vuex中mapState,mapGetters,mapMutations,mapActions的作用
2018/04/13 Javascript
微信小程序身份证验证方法实现详解
2019/06/28 Javascript
vue项目部署到nginx/tomcat服务器的实现
2019/08/26 Javascript
在Vue中实现随hash改变响应菜单高亮
2020/03/09 Javascript
详解React 元素渲染
2020/07/07 Javascript
[01:39]2014DOTA2国际邀请赛 Newbee经理CU专访队伍火力全开
2014/07/15 DOTA
[26:24]完美副总裁、DOTA2负责人蔡玮专访:电竞如人生
2014/09/11 DOTA
详解MySQL数据类型int(M)中M的含义
2016/11/20 Python
python中快速进行多个字符替换的方法小结
2016/12/15 Python
新手如何快速入门Python(菜鸟必看篇)
2017/06/10 Python
python中获得当前目录和上级目录的实现方法
2017/10/12 Python
聊聊Python中的pypy
2018/01/12 Python
Python django框架应用中实现获取访问者ip地址示例
2019/05/17 Python
python3+PyQt5 数据库编程--增删改实例
2019/06/17 Python
Django之提交表单与前后端交互的方法
2019/07/19 Python
Python如何使用Gitlab API实现批量的合并分支
2019/11/27 Python
Python通过VGG16模型实现图像风格转换操作详解
2020/01/16 Python
Python实现遗传算法(二进制编码)求函数最优值方式
2020/02/11 Python
python爬虫使用scrapy注意事项
2020/11/23 Python
餐饮管理自我介绍信
2014/01/15 职场文书
经典商业广告词
2014/03/13 职场文书
应届生求职信
2014/05/31 职场文书
就业推荐表自我评价范文
2015/03/02 职场文书
2015年农村党员公开承诺事项
2015/04/28 职场文书
公司中层管理培训心得体会
2016/01/11 职场文书