我使用md5来哈希我的密码,但了解到使用bcrypt更安全.
使用md5时,很容易检查表单中输入的密码是否正确.我干脆完成了
if(md5($request->password) == $user->password)
//Login or whatever
那么如何使用bcrypt来做到这一点?我试过了
if(bcrypt($request->password) == $user->password)
但这不起作用.
解决方法:
使用attempt()
方法:
if (Auth::attempt(['email' => $email, 'password' => $password]))
The
attempt
method accepts an array of key/value pairs as its first argument. The values in the array will be used to find the user in your database table.
https://laravel.com/docs/5.4/authentication#authenticating-users
在引擎盖下尝试()使用password_verify()
方法来检查密码.