[Hyperf]Method Hyperf\Validation\Validator::validate1 does not exist

这篇博客介绍了如何在Hyperf框架的PHP控制器中利用`ValidatorFactoryInterface`进行请求参数验证。通过`@Inject()`注解注入`ValidatorFactoryInterface`,然后在`test`方法中,针对`RequestInterface`获取的所有数据,创建一个验证规则,特别是使用`Rule::in`确保'hello'字段的值必须在1和2之间。这是一个关于PHP后端开发和Web表单验证的实例。
<?php

namespace App\Controller;

use Hyperf\Di\Annotation\Inject;
use Hyperf\HttpServer\Contract\RequestInterface;
use Hyperf\Validation\Contract\ValidatorFactoryInterface;

class TestController
{
    /**
     * @Inject()
     * @var ValidatorFactoryInterface
     */
    protected $validationFactory;

    public function test(RequestInterface $request)
    {
        $validator = $this->validationFactory->make(
            $request->all(),
            // hello限制值必须存在于[1, 2]
            // 错误写法:['hello' => ['required', 'integer', [1, 2]]]
            // 正确写法:使用Rule::in
            ['hello' => ['required', 'integer', Rule::in([1, 2])]]
        );
    }
}

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值