PHP 生成唯一订单号、唯一ID的方法

在应用软件开发中,经常需要生成一种长度一致并且不能重复的字符串序列或者数字编号ID,来保证一条数据记录的唯一性,比如电商平台中的订单编号、会员系统中的邀请码、激活码等等,这里总结一下在PHP中生成唯一序列的几种方法以及他们的用例和注意事项。

W3CAPI
1
2020-04-25 22:58:25
文档目录
我的书签
 

生成唯一订单号、唯一字符序列的算法

我们要想生成唯一的字符序列,首先需要了解生成的算法都有哪些?然后根据这些算法的实现进行分析,最后选择执行效率最好的算法。下面是我想到的一些算法:
  1. 使用随机数或随机字符:但是随机数可能会存在重复,需要再使用查表法进行判重(判断重复)
  2. 使用时间戳:时间戳在高并发的时候也会存在重复,需要再使用查表法进行判重(判断重复)
  3. 使用随机数或随机字符串+时间戳:在高并发的时候也会存在重复,需要再使用查表法进行判重(判断重复)
  4. 使用随机数或随机字符串+时间戳+其他标识(用户ID、商品ID、订单ID等等):高并发不会发生重复,不用查表
我现在想到的也就这些了,基本的思路就是:使用各种方法来使生成的字符序列不会和之前生成的重复,下面我们来看具体的实例。
友情提示