我需要 PHP 函数,该函数将从任何输入字符串创建 8 个字符长的 [a-z] 散列。 所以例如当我提交“Stack Overflow”时,它会返回,例如“gdqreaxc”(8 个字符 [a-z] 不允许使用数字)
最佳答案
也许是这样的:
$hash = substr(strtolower(preg_replace('/[0-9_\/]+/','',base64_encode(sha1($input)))),0,8);
这会生成一个 SHA1 哈希,对其进行 base-64 编码(为我们提供完整的字母表),删除非字母字符,将其小写并截断。
对于 $input = 'yar!';
:
mwinzewn
对于 $input = 'yar!!';
:
yzzhzwjj
所以传播看起来不错。
关于用于创建 8 个字符长散列的 PHP 函数([a-z] = 不允许使用数字),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3197885/