Laravel : 需要动态验证规则(从配置文件或设置中读取)

Laravel : Need to dynamic validation rules (read from config file or setting)

我有这样的请求规则:

public function rules()
{
    return [
        'title' => 'required',
        'recipients' => 'required',
        'attachments' =>'mimes:jpeg,png,pdf,doc,xls|max:10410',
    ];
}

所以我正在寻找一种使规则动态化的方法,可以读取配置文件或从数据库中读取。

例如:

我创建了一个名为 setting 的辅助函数,它可以从我的数据库加载设置,我想读取这些数据并按照我的规则进行设置,如下所示:

public function rules()
    {
        $max_upload_size = setting('max_document_upload_size'));
        return [
            'title' => 'required',
            'recipients' => 'required',
            'attachments' =>'mimes:jpeg,png,pdf,doc,xls|max:$max_upload_size',
        ];
    }

有没有可能或者我应该怎么做才能覆盖这个?

提前致谢。

请在max后面写上:'.

 public function rules()
        {
            $max_upload_size = setting('max_document_upload_size'));
            return [
                'title' => 'required',
                'recipients' => 'required',
                'attachments' =>'mimes:jpeg,png,pdf,doc,xls|max:'.$max_upload_size',
            ];
        }

这个问题是指PHP,而不是Laravel。 There are many options to combine a string with a variable.

如果你需要对字符串进行大量的设置,那么你可以使用这样的语法:

return [
    'title' => 'required',
    'recipients' => 'required',
    'attachments' => "mimes:$mimes|max:$max_upload_size"
]