laravel 默认用的登陆密码加密方式是:
php
$password = Hash::make('password');
而我平时用的密码加密方式是:laravel
$password = md5('password'.'salt'); //其中的salt是一个随机串
那么怎么把默认的改为本身想要的呢?数据库
我谷歌了一下,还真让我找到了。转送:http://blueve.me/archives/898 app
为了防止这个网站打不开,我本身再稍微整理了一下,以备后用:ide
首先,打开这个文件夹:/vender/laravel/framework/src/illuminate/Auth网站
2. 打开EloquentUserProvider.php文件,将validateCredentials这个方法里的内容改为这样的:this
public function validateCredentials(UserInterface $user, array $credentials) { $plain = $credentials['password']; $authPassword = $user->getAuthPassword(); $authSalt = $user->getAuthSalt(); return $authPassword === md5($plain.$authSalt); }
3.同一个目录下,打开UserInterface.php文件,在后面添加这一句:加密
public function getAuthSalt();
4.打开:/app/models/User.php文件,在里面添加这个方法:
spa
public function getAuthSalt() { return $this->salt; }
这样,就能够用手册里的“用户验证”和“判断用户是否已经验证”等功能了,还有,我密码和随机串在数据库中存的是password和salt字段。code