【发布时间】:2011-11-21 06:12:32
【问题描述】:
是否可以用0-9a-zA-Z字符的序列来表示一个十六进制字符(0-9A-F)的序列,所以结果序列更小,可以解码?
例如:
$hex = '5d41402abc4b2a76b9719d911017c592';
echo $string = encode($hex); // someASCIIletters123
echo decode(string) == $hex; //true
【问题讨论】:
-
我认为他的意思是把 2 个(4 字节)十六进制数字塞进一个字节(应该可以的)
-
看起来你刚刚重新发明了 base64...嗯,base62,但如果我是你,我会选择众所周知且到处支持的 base64。
-
@Robik。我认为 zie 的意思是将 16 基转为 62 基。基数越高,字符串越短,因此“结果序列”确实会“更小”。 62 位字符是 0-9a-zA-Z。不错的概念,但我不知道有什么简单的方法。