PHP - 从长md5哈希生成短字母数字字符串的好方法是什么?
答:在 PHP 中,可以使用 base_convert()
函数将长字符串哈希转换为短字母数字字符串。例如,将长字符串哈希 "e85221589159194852214852214879219" 转换为短字符串 "85221-485221-4879219",可以使用以下代码:
$longHash = 'e85221589159194852214852214879219';
$shortHash = base_convert($longHash, 16, 36);
echo $shortHash;
base_convert()
函数接受三个参数:要转换的基数(16),要转换的基数(36)和要转换的字符串。函数将返回一个与输入字符串具有相同长度的字符串,其中每个字符都是输入字符串的相应字符,但每个字符都被替换为其在字母表中的下一个字符。
除了使用 base_convert()
函数外,还可以使用 md5()
函数生成长哈希,并使用 substr()
函数提取所需的部分。但是,由于 substr()
函数返回一个字符串,因此可能需要对其进行转换,以便将其用作数字。
领取专属 10元无门槛券
手把手带您无忧上云