$fail 函数
$fail 函数是 Laravel 验证系统中自定义验证规则时使用的一个重要工具。
它主要用在闭包验证规则或自定义验证规则中,用于标记验证失败并提供错误消息。
以下是关于 $fail 函数的一些重要信息:
$fail函数用于指示当前验证规则失败。当调用$fail函数时,Laravel 会将该字段标记为验证失败,并添加相应的错误消息。$fail函数通常作为闭包验证规则的参数之一。您可以调用它并传入一个字符串参数,这个字符串将作为错误消息。- 您可以根据需要多次调用
$fail函数,每次调用都会添加一个新的错误消息。 $fail函数可以与 Laravel 的本地化功能结合使用,允许您传入翻译后的错误消息。- 使用
$fail函数,您可以实现复杂的条件验证逻辑,这在标准验证规则难以表达时特别有用。 - 在闭包中,您可以访问请求的其他数据,这使得基于多个字段或复杂逻辑的验证成为可能。
'field' => [
function($attribute, $value, $fail) {
if (/* 某些条件 */) {
// $fail('错误消息');
$fail($this->messages()['name.unique'] ?? '仓库名称已存在');
}
}
]
