工学1号馆

home

tp5.1验证器的使用

Wu Yudong    June 28, 2019     ThinkPHP   1,007   

一直以来都是对着手册写验证器,感觉没有学习到精髓,今天系统的研究了一下,本文记录一下。

场景如下:

对一个Login控制器设计验证器进行验证,步骤如下:

1、新建一个名为Login的验证器,并添加验证规则:

<?php

namespace app\index\validate;

use think\Validate;

class Login extends Validate
{
    protected $rule = [
        'username' => 'require',
        'password' => 'require',
        'captcha'  => 'require|captcha',
    ];

    protected $message = [
        'username.require' => '请输入账号',
        'password.require' => '请输入密码',
        'captcha.require'  => '请输入验证码',
        'captcha.captcha'  => '验证码错误',
    ];
}

接着在Login控制器中添加:

        if ($this->request->isPost()) {
            $param = $this->request->param();
            $result = $this->validate($param, 'login');
            if ($result !== true) {
                $this->error($result);
            }

使用validate方法可以简化验证,第二个参数指定的是验证器,不区分大小写

注意:验证器的名字首字母大写,驼峰法会出错

参考资料:https://www.kancloud.cn/manual/thinkphp5_1/354101

如果文章对您有帮助,欢迎点击下方按钮打赏作者

Comments

No comments yet.
To verify that you are human, please fill in "七"(required)