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)!