这里我们有一个编码文件名的方案,并希望在检索时对其进行解码。 如果我用md5编码它我不能解码它,因为它是单向散列,如果我用'base64_encode'编码它,那么如果两个同名文件在检索时会导致我的数据冲突。
所以我想知道PHP中是否存在任何独特的编码函数进行编码,然后再进行解码。
提前致谢!!!!
答案 0 :(得分:5)
你可以使用base64_encode并在其前面添加一个唯一的标识符:
$encoded = base64_encode(uniqid().$filename); //$filename is your filename
并像这样解码:
$decoded = base64_decode($encoded);
$filename = substr($decoded, 13);
这基本上会为你提供一个独特的文件名编码字符串,可以反转为文件名。