mt_rand()在windows中可以生成的最大数量是多少?

时间:2018-01-13 04:57:04

标签: php jquery mysql ajax

实际上在我的php应用程序中,我想为每个用户分配一个唯一的数字代码。为此我使用mt_rand(0,100000000)。我希望它为数百万不同的用户生成数百万的数字而不重复,并将其保存到数据库。可能吗 ?或者推荐任何其他技术? 另外为了确保数字不重复,我正在检查数据是否已经存在于db中,如果确实存在,我重新加载页面以生成另一个数字并将其保存到db orelse继续保存数字,因为它是。 这是最好的实践吗?

我是php中这个非重复数字生成器的新手,所以不知道有效的方法。

1 个答案:

答案 0 :(得分:0)

您可以使用mt_getrandmax()获取mt_rand()的最大价值。

正如Mozilla Dev所说,

  

max:要返回的可选最高值(默认值:mt_getrandmax())

     

最小最大范围必须在mt_getrandmax()范围内。即(max-min)< = mt_getrandmax()否则,mt_rand()可能返回比它应该更差的随机数。