可能重复:
PHP: How to generate a random, unique, alphanumeric string?
试图让smth像http://imgur.com/t4Syk
我们知道imgur对图像使用5个区分大小写的字符串。怎么做?

最佳答案

例如,您可以使用自动递增图像id,转换为base58(a-za-z0-9)。
base_convert可以转换为base36:

$id = base_convert(123456789, 10, 36); // "21i3v9"

(另请参见PHP - How to base_convert() up to base 62
如果需要不可预测的图像ID,请查看this answer
对于MongoDB ID(正如您正在使用MongoDB一样):
这些id是12字节的数字,编码为base16,这使得它们是24字节。
通过将它们从base16转换为base58,可以将它们压缩为17个字节:
gmp_strval(gmp_init("47cc67093475061e3d95369d", 16), 58)); // "1KXotnQBQbcPmeOo9"

还要看一下序列号部分here。这将允许您为图像生成较小的唯一编号。

07-25 22:53
查看更多