gpt4 book ai didi

php - 如何在 laravel 的闭包函数中调用 laravel 验证规则?

转载 作者:行者123 更新时间:2023-12-05 06:27:31 28 4
gpt4 key购买 nike

如果帐户(可能是电子邮件或手机)已经过验证码验证,我希望跳过验证码验证。

所以我写了一个 colsure 函数。如果 session('captcha_validated_reset_account') 等于用户输入的帐户,它将跳过验证码验证。

如果没有,程序将调用 laravel 验证规则,如“required|captcha”(验证码来自 https://github.com/mewebstudio/captcha)。

问题是我不知道如何在闭包中调用验证规则,我试过 return 'required|captcha' 但它没有按预期工作。

'captcha' => function($attribute, $val, $fail) use ($request) {
if (
! empty(session('captcha_validated_reset_account'))
&& session('captcha_validated_reset_account') == $request->input('account')
) {
return;
} else {
Rule::required... //and call a rule named 'captcha' to validate the captcha code from user input
//return 'required|captcha';
}
}

有什么方法可以在闭包函数中调用 laravel 验证规则?

最佳答案

你应该把闭包放在一个数组中:

'captcha' => [ function ($attribute, $val, $fail) use ($request) {
if (
empty(session('captcha_validated_reset_account'))
&& session('captcha_validated_reset_account') != $request->input('account')
) {
$fail($attribute . ' is required.');
}
}]

请注意,我已经更改了条件。

关于php - 如何在 laravel 的闭包函数中调用 laravel 验证规则?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55198713/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com