Maison >développement back-end >tutoriel php >php的md5结果能否转为二进制再base64编码以缩短长度?
问题大致如题, 简单的进制转换似乎只能得到0和1的字符串, 并不是二进制数据, 希望知道这个代码该怎么写, 能否尽量用php内置的函数实现
目的是生成更短的唯一标识, 之前是使用md5再判断是否重复的, 但md5结果是32位16进制字符串, 还是有点长, 于是就想转成64进制的字符串, 不知道我的思路有没有错误?
问题大致如题, 简单的进制转换似乎只能得到0和1的字符串, 并不是二进制数据, 希望知道这个代码该怎么写, 能否尽量用php内置的函数实现
目的是生成更短的唯一标识, 之前是使用md5再判断是否重复的, 但md5结果是32位16进制字符串, 还是有点长, 于是就想转成64进制的字符串, 不知道我的思路有没有错误?
自行解决了:
<code>function base64md5 ($str) { return base64_encode(md5($str, 1)); }</code>
ps:大致如上, 手机写的代码, 不保证正确……
可以用16位的md5啊.