不败君

前端萌新&初级后端攻城狮

使用Think PHP6 的验证器验证请求参数

使用Think PHP6 的验证器验证请求参数

2020-05-26 18:10:00

围观(3182)

Think PHP6 官方文档地址:https://www.kancloud.cn/manual/thinkphp6_0/1037479

官方文档一直都被吐槽不够详细. 所以本文将验证器的使用写一下, 验证器可以替代很多的判断.


例如, 在 TP3 的时候, 可能是这样判断的:

$name = I('name', '');
if (empty($name)) {
    // 抛出异常
}

如果参数比较多的时候, 需要判断的变量越多代码量也随着增加. 如果使用验证器就会好很多. 

验证器的官方文档: https://www.kancloud.cn/manual/thinkphp6_0/1037624


直接上代码:

<?php

namespace app\api\controller;

use think\facade\Validate;
use think\Request;

class Auth
{
    public function index(Request $request)
    {
        $input = $request->post();
        $validate = Validate::rule([
                'name|名称'  => 'require|max:25',
                'email|邮箱' => 'require|email'
            ]);

        if (!$validate->check($input)) {
            return $validate->getError();
        }
    }
}

使用 Postman 请求该接口, 可看到结果:

1.png

请求参数加上 name 则可以看到继续向下验证了邮箱:

2.png


Laravel 也有相关的验证器 : Laravel表单自定义验证消息

本文地址 : bubaijun.com/page.php?id=184

版权声明 : 未经允许禁止转载!

评论:我要评论
发布评论:
Copyright © 不败君 粤ICP备18102917号-1

不败君

首 页 作 品 微 语