如何使用uniqid生成6个字符长度的ID?

时间:2012-05-11 03:54:39

标签: php random unique

我的网站有一个部分,为每个帖子生成一个唯一的ID,然后将其发送到数据库。问题是生成的ID总长度为16个字符,我需要id只有6个字符。

这是用于生成ID的代码:

$order_id  = uniqid(rand(10,1000), false);

我有什么方法可以完成这样的改变吗?

1 个答案:

答案 0 :(得分:20)

为什么不在数据库中使用auto_incremental执行此操作?所以第一个id是1,然后是2,依此类推。如果您只需要6位数,这将导致999 999个不同的键。


之前接受的答案,使用substr()uniqid()获取前6个字符,并非100%安全。 uniqid将生成唯一ID,其中WHOLE ID将是唯一的。删除这些字符可能会导致重复。