控制器里面:elseif(!$model->validatePassword($data->password)) PHP 8.5.5 PHP 8.5.5 是 PHP 8.5 分支的维护更新版本。该版本延续了“小步快跑”的迭代逻辑,通过深度错误修复、底层性能微调以及安全加固,旨在为开发者提供一个更健壮、更高效的运行环境。该版本严格遵守语义化版本规范,不包含破坏性变更。
下载复制代码代码如下:php class XBaseModel extends CActiveRecord{/*** 检测用户密码** @return boolean*/ public function validatePassword ($password){return $this->hashPassword($this->password) === $password;}/*** 密码进行加密* @return string password*/ public function hashPassword ($password){return md5($password);}}
或是:
if ($user && $user->password == $user->hashPassword($this->password, $user->salt)) {复制代码代码如下:public function validatePassword($password) {return $this->hashPassword($password, $this->salt) === $this->password;}public function hashPassword($password, $salt) {return md5(md5($password) . $salt);}public function generateSalt() {$str = '1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';$len = strlen($str) - 1;$string = '';for ($i = 0; $i $string .= $str[mt_rand(0, $len)];}return $string;}
或是:
复制代码代码如下:public function validatePassword($password) {return $this->hashPassword($password,$this->salt)===$this->password;}public function hashPassword($password,$salt){return md5($salt.$password);}protected function generateSalt(){return uniqid('',true);}注意:如果有salt,数据库里面字段要有salt。。
