Rumah  >  Artikel  >  pembangunan bahagian belakang  >  php的md5结果能否转为二进制再base64编码以缩短长度?

php的md5结果能否转为二进制再base64编码以缩短长度?

WBOY
WBOYasal
2016-08-10 09:07:271963semak imbas

问题大致如题, 简单的进制转换似乎只能得到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啊.

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn