使用hashids 生成用户加密钥匙
2020-03-04 本文已影响0人
骑蚂蚁上高速_jun
hasids作用:
将多个整型或整型字符串加密成ID字符串号码,还可以对其ID号码字符串解密。你可以利用它来加密你不想暴露给用户的多个数字 ID。
场景:
在swoole的websocket场景中会使用。
先由用户登录,将用户的 tenantId userId roleId 加密成唯一的ID号码返回给客户端
....
....
安装:
仅支持 php7+ , 由于我是基于swoole 命令行开发,我使用的是c扩展,当然也有对应的/composer 包
$ git clone https://github.com/cdoco/hashids.phpc.git
$ cd hashids.phpc
$ phpize && ./configure && make && make install
# 配置 php.ini -> extension=hashids.so
使用:
$hashids = new Hashids();
$hash = $hashids->encode(1, 2, 3, 4, 5); // ADf9h9i0sQ
$numbers = $hashids->decode($hash); // [1, 2, 3, 4, 5]
//或者你可以用静态方法调用
$hash = Hashids::encode(1, 2, 3, 4, 5); // ADf9h9i0sQ
$numbers = Hashids::decode($hash); // [1, 2, 3, 4, 5]
// 更多用法请参考 github