2 回答
TA贡献1810条经验 获得超4个赞
在 laravel 6 中,你不需要任何额外的模块。
最简单的方法是在AppServiceProvider类中扩展 Validator 对象:
public function boot() {
// ...
Validator::extend('cron', function ($attribute, $value, $parameters, $validator) {
return CronExpression::isValidExpression($value);
});
}
TA贡献1824条经验 获得超8个赞
不是开箱即用的,但有一个用 PHP 编写的美妙的cron 表达式解析器。
composer require dragonmantank/cron-expression 安装
然后你需要创建一个自定义规则 php artisan make:rule Cron
现在,只需调用isValidExpression()的passes()方法,像这样。
public function passes($attribute, $value)
{
return CronExpression::isValidExpression($value);
}
不要忘记留言
public function message()
{
return 'The :attribute field must be a valid cron expression.';
}
为了使用它,您可以在表单请求中传递规则的实例
public function rules()
{
return [
'cron' => [new Cron],
];
}
- 2 回答
- 0 关注
- 164 浏览
添加回答
举报