Yii提供了方便的幫助函數來讓你用一個安全秘鑰來加密解密資料。資料透過加密函數進行傳輸,這樣只有擁有安全秘鑰的人才能解密。例如,我們需要儲存一些資訊到我們的資料庫中,但是,我們需要保證只有擁有安全秘鑰的人才能看到它(即使應用的資料庫洩漏)
$data 是你要加密的內容,
$ secretKey 是你自己設定的密碼,
$encryptedData = Yii::$app->getSecurity()->encryptByPassword($data, $secretKey);
隨後,當用戶需要讀取資料時:
$encryptedData 是你要解密的内容 $secretKey 是你自己设置加密时的密码 $data = Yii::$app->getSecurity()->decryptByPassword($encryptedData, $secretKey);
但是對字串進行加密,加密後的字串是一串亂碼,(看起來確實像亂碼,具體是什麼有待考證),這不利於我們的下一步操作。
我們可以使用base64處理加密後的字串, 處理後的字串是由字母和數字組成
應用實例:
//邀請註冊
$id = Yii::$app->user->getId();//获取登录用户id //加密(此处加密密码设为空) $uid = base64_encode(yii::$app->security->encryptByPassword($id,'')); //解密 $iss=yii::$app->security->decryptByPassword(base64_decode($uid),'');
以上就是yii2.0 加密解密處理方法的內容,更多相關內容請關注PHP中文網(www.php.cn)!