首頁  >  問答  >  主體

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

问题大致如题, 简单的进制转换似乎只能得到0和1的字符串, 并不是二进制数据, 希望知道这个代码该怎么写, 能否尽量用php内置的函数实现

目的是生成更短的唯一标识, 之前是使用md5再判断是否重复的, 但md5结果是32位16进制字符串, 还是有点长, 于是就想转成64进制的字符串, 不知道我的思路有没有错误?

迷茫迷茫2770 天前399

全部回覆(2)我來回復

  • 高洛峰

    高洛峰2017-04-11 09:50:24

    自行解决了:

    function base64md5 ($str) {
     return base64_encode(md5($str, 1));
    }

    ps:大致如上, 手机写的代码, 不保证正确……

    回覆
    0
  • 黄舟

    黄舟2017-04-11 09:50:24

    可以用16位的md5啊.

    回覆
    0
  • 取消回覆