【发布时间】:2018-07-03 13:31:26
【问题描述】:
在 Laravel 中使用 write custom validation rule 的一种方法是调用 Artisan 方法 make:rule:
php artisan make:rule EmptyIf
那我就不知道怎么处理参数了。 “参数”的意思类似于require_if:foo,bar。 \Illuminate\Contracts\Validation\Rule 接口对于 passes 函数只有两个参数:
public function passes($attribute, $value);
所以我不明白应该在哪里添加参数。我知道我可以通过服务提供者扩展验证器,就像这样:
Validator::extend('foo', function ($attribute, $value, $parameters, $validator) {
//
});
但这似乎是一种旧方式,在我看来有点混乱。有没有办法处理Rule 的passes 函数中的参数?
【问题讨论】:
标签: php laravel laravel-5 laravel-5.5 laravel-validation