laravel的自定义验证帮助-根据DB字段检查字段


Custom validation help for laravel - check field against DB field

试图想出一种方法,允许我根据数据库的密码检查输入密码。

对于数据库值,我正在使用Auth功能。到目前为止,我有:

$currentPassword = Auth::user()->password;
$passwordInput = Input::get('password-old');
if (isset($passwordPassword) && !Hash::check($passwordInput, $currentPassword))
{
return Redirect::to('/updatepassword')->with('incorrectPassword', '1');
}

然后我正在检查与重定向一起发送的错误密码。这很管用,但很难看。我想创建一个自定义验证,在那里我可以根据给定的值检查字段。

因此:

'password' = > 'checkMatch:$checkValue'

还是什么?

有什么帮助吗?我已经研究了如何实现自定义验证规则,但如果没有一个工作示例,我就无法将其融入脑海。

Validator::extend('checkMatch', function($attribute, $value, $parameters)
{
   if (count($parameters) < 1)
      throw new InvalidArgumentException("Validation rule checkMatch requires at least 1 parameters.");
   return Hash::check($value, $parameters[0]);
});