<span><strong>YII2 实现修改密码功能</strong></span><br /><br /><strong><span>主要难点:</span></strong><br /><br /><span>1、密码加密</span><br /><span> YII2对密码加密生成的结果是不同的,即用相同的初始密码在不同时间得到的加密结果不同,所以我们不能用常用的方法去验证密码是否正确(将密码加密后与数据库中的密码相比较)。YII2有自己的加密以及密码验证流程。</span><br /><span> 加密 $hash = Yii::$app->getSecurity()->generatePasswordHash('123456']);</span><br /><span> 验证 Yii::$app->getSecurity()->validatePassword('123456', $hash),返回true或false</span><br />2、返回信息处理<br /> Yii::$app->session->setFlash('contact','旧密码错误');//设置 flash<br /> return $this->goBack(); //页面转跳 <br /> Yii::$app->session->getFlash('contact'); //获取 flash
コードの最適化: 主な最適化の詳細は次のとおりです
1.コントローラー内のメインロジックコードをモデルに移動します
2. データベース運用の最適化
コントローラー内:
リーリーモデル内:
リーリー