我需要一种非常简单的方法来创建一个始终唯一的简短id。例如,创建了一些东西,并给出了一个正常的自动增量id。我需要有一个替代id,如果你愿意,这是4-6个字符。
例如a1b2或abcd。尽管如此,它们始终需要是唯一的。如果可以的话,请帮助我。
发布于 2011-08-31 07:36:33
substr(str_shuffle(str_repeat('ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789',5)),0,5);测试其唯一性的唯一方法是检查您的数据库。只有4-6个字符长度的字符串的可能空间相对较小,很有可能发生冲突。
发布于 2011-08-31 07:48:55
试试这个:
$len = rand(3, 4);
$hash = substr(str_shuffle("abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"),0,$len);发布于 2011-08-31 07:38:32
对于我(http://php.net/manual/en/function.uniqid.php)来说,uniqid()工作得很好。它返回一个十六进制字符串,该字符串可以转换为大约6-7字节的二进制字符串。
https://stackoverflow.com/questions/7250935
复制相似问题