生成随机数
- 方法:generateRandomString
- 用法:
$key = Yii::$app->security->generateRandomString();
加密
- 方法:encryptByPassword
- 用法:
$password_hash = Yii::$app->getSecurity()->encryptByPassword($password, $key)
参数说明:
参数 | 类型 | 备注 |
---|---|---|
$password | string | 要加密的密码 |
$key | string | 自己设置的salt |
解密
- 方法:decryptByPassword
- 用法:
$data = Yii::$app->getSecurity()->decryptByPassword($password_hash, $key);
参数说明
参数 | 类型 | 备注 |
---|---|---|
$password_hash | string | 要解密的内容 |
$key | string | 自己设置的salt |
实例:
$password = '1234567';
$key = Yii::$app->security->generateRandomString();
//加密
$password_hash = base64_encode(Yii::$app->getSecurity()->encryptByPassword($password, $key));//加密入数据库password_hash字段内容
//解密
$data = Yii::$app->getSecurity()->decryptByPassword(base64_decode($password_hash), $key);//解密结果:1234567
但是对字符串进行加密,加密后的字符串是一串乱码。
我们可以使用base64处理加密后的字符串, 处理后的字符串是由字母和数字组成。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。