Laravel 6+Uniq id生成仅在数量上具有附加逻辑



我正在用time()函数生成一个uniqid,大约是10位数。。我想要一个uniqno,在那里我可以存储18个数字no!对于这些,我想生成rand(3 digit)+rand(3 digits)+rand(2 digits)。。我几乎没有问题1.有碰撞的机会吗2.10位数的时间((是否可以增加到11或123.如果它增加了,我想建立一个逻辑,在那里我可以动态生成随机的no-Like=>18(Max(-如果10(时间(=>那么3+3+2如果(11(,则3+2+2&如果(12(,则3+3如果可能的话,请引导我!其他建议也欢迎!

您只需使用bin2hex(random_bytes(9))即可生成随机标识符。但请注意,这些标识符除了数字之外,还可以包含从A到F的字母。

但请注意,随机数通常不足以确保唯一性,尽管bin2hex(random_bytes(9))将以压倒性的概率是唯一的。还有其他几件事需要考虑,比如:

  • 标识符是很难猜测,还是只是"看起来随机">
  • 标识符是否是唯一允许访问其标识的东西的东西

生成唯一标识符的最佳方法将取决于这些和其他问题,我在"唯一随机标识符"一节中给出了这些问题。你应该用我在该部分提出的六个问题的答案编辑你的问题贴;答案将进一步建议使用什么类型的标识符。

相关内容

  • 没有找到相关文章

最新更新