hashids是一个可以生成唯一的无序字符串ID号,它还可以解密这些ID,你可以用它来加密你不想暴露给用户数字ID。安装$gitclonehttps://github.com/cdoco/hashids.phpc.git$cdhashids.phpc$phpize&&./configure&&make&&makeinstall你可以在php.ini中设置一些选项,也可以自己设置在构造函数中,但我建议您在php.ini中设置它,这样您可以获得更好的性能。[hashids]extension=hashids.so//默认为空字符串hashids.salt=cdoco//默认长度为0hashids.min_hash_length=20//默认为abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890//可以自己设置,比如你使用所有小写字符hashids.alphabet=abcdefghijklmnopqrstuvwxyz快速启动$hashids=newHashids();$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]性能原来有纯php代码实现的功能,现在封装成php扩展,性能比纯php版本提升一百倍左右其他$hashids=newHashids();$hash=$hashids->编码(1,2,3,4,5);//ADf9h9i0sQ$hash=$hashids->encode([1,2,3,4,5]);//ADf9h9i0sQ参数newHashids(string$salt,int$min_hash_length,string$alphabet);//examplenewHashids("thisissalt.",20,'abcdefghijklmnopqrstuvwxyz');十六进制加密和解密$hashids=newHashids();$hash=$hashids->encodeHex('FFFFDD');//rYKPAK$hex=$hashids->decodeHex($hash);//FFFFDD
