UNIQID替代

时间:2019-01-24 21:40:38

标签: php

我希望生成一个唯一的随机代码。

使用uniqid()时,结果基于时间,例如: 如果用户昨天在12:12:35创建了ID,而另一个用户今天在同一时间创建了一个新ID,则该ID相同,因为基于24小时循环时间。

我正在考虑以这种方式使用microtime

// create random based on unix epoch
$random = round(microtime(true) * 1000);

这样我可以授予唯一的生成ID吗?

1 个答案:

答案 0 :(得分:0)

uniqid()的结果不是基于时间,而是基于时间戳,因此不仅是时间,还包括日期和时间。

来自php.net uniqid page

  

以字符串的形式返回基于时间戳的唯一标识符。

您可以将第二个参数“ more_entropy”设置为true以增加其唯一性。