PHP 生成唯一订单号函数

PHP 生成唯一订单号函数

一、应用场景
       有电子商城项目,需要生成订单号。当时的考虑很简单,取系统时间加上随机数,或者使用 uniqid() 方法。仔细考虑下上述方法,在顾客购买量少的情况下,订单重复的可能性为零,但是在购买高蜂期生成的订单号重复是很有可能发生的。

 

二、自定义生成订单号中使用的PHP内置的函数说明如下
函数说明:
       openssl_random_pseudo_bytes函数本身是用来生成指定个数的随机字节
       ceil  函数进一法取整
       bin2hex  函数把包含数据的二进制字符串转换为十六进制值
       substr函数截取字符串
       rand   函数随机生成1至99999随机数
       str_pad函数指定长度填充字符串
三、实现生成25位唯一订单号
1、定义StrOrderOne函数
PHP 生成唯一订单号函数
2、定义一个$date变量储存当前时间,如:180420格式
PHP 生成唯一订单号函数
结果如下:
PHP 生成唯一订单号函数

 

3、生成一个随机数,并转成十六进制值
PHP 生成唯一订单号函数
结果如下:
PHP 生成唯一订单号函数
4、让订单右边填充上00001至99999的随机数
PHP 生成唯一订单号函数
结果如下:
PHP 生成唯一订单号函数
5、接下来我们使用for循环同时生成1万个订单
PHP 生成唯一订单号函数
结果如下:
PHP 生成唯一订单号函数
通过上图所示可以看到数组的个为10000,与我们for遍历中指定最大数一致,代表生成的订单号是没有重复。

本文来自投稿,不代表科技代码立场,如若转载,请注明出处https://www.cwhello.com/6546.html

如有侵犯您的合法权益请发邮件951076433@qq.com联系删除

(0)
上一篇 2018年4月28日 09:24
下一篇 2018年4月28日 09:38

相关推荐

  • PHP与BI工具的集成

    随着数据分析和商业智能(BI)的普及,越来越多的企业开始使用BI工具来帮助他们更好地理解和管理企业数据。PHP是一种广泛使用的Web开发语言,在企业中也非常常见。因此,将PHP和BI工具集成在一起可以带来许多好处...

    2023年5月19日
    01
  • 教你玩转PHP概述与环境搭建

    你知道什么是PHP吗?PHP起源于1995年,由Rasmus Lerdorf开发。到现在,PHP已经经历了几十年的时间洗涤,成为全球最受欢迎的脚本语言之一。就让我们一起去看看吧PHP5是一种面向对象的、完全跨平台的新型Web开发语...

    2023年3月29日 PHP自学教程
    01
  • 教你用php读写csv格式的文件

    读取csv格式文件function read_csv($file){ setlocale(LC_ALL,'zh_CN'😉;//linux系统下生效 $data = null;//返回的文件数据行 if(!is_file($file)&&!file_exists($file)) { die('文件错误&...

    2022年6月27日
    0208
  • PHP产生不重复随机数的5个方法总结

    无论是Web应用,还是WAP或者移动应用,随机数都有其用武之地。PHP项目中,PHP程序员是需要经常的和随机数或者随机数组打交道,所以,本文就分享PHP如何产生不重复随机数常用的几种方法! 方法一: 方法二: 方法...

    2018年5月2日
    0281
  • php的数组类型array

    标识一系列数据的“有序排列”的集合体。 php中,数组的下标可以使用整数或字符串。 数字下标常说“索引号”, 字符串下标常说“键名”。 实际上,在php的报错系统中,都叫做“index”,或offset 数组中还可以存储数组,...

    2018年3月17日
    0234
  • PHP中如何进行智能音乐和音频处理。

    随着音乐产业的不断发展和普及,音乐制作和音频处理的需求也日益增多。而PHP作为一种高度可扩展的编程语言,已经不仅仅局限于Web开发领域,还能用于音乐和音频的处理。本文将介绍如何使用PHP进行智能音乐和音频处...

    2023年5月23日
    02
  • Redis中的布隆过滤器和PHP的使用方法。

    Redis是一个开源的内存数据库,被广泛应用于缓存、消息队列、分布式锁等场景。其中,布隆过滤器是一种高效的数据结构,可以用于判断一个元素是否存在于一个集合中,在Redis中得到了广泛的应用。本文将介绍Redis中...

    2023年5月21日
    00
  • PHP的浮点类型float, double, real

    浮点类型float, double, real有两种写法: $v1 = 1.234;   //带小数点,,就是浮点类型 $v2 = 1.234E3; //含义是:1.234乘以10的3次方,即1234,带E的形式就是浮点数 $v3 = 1234E3;//结果值是1234000,但也是...

    2018年3月14日 PHP自学教程
    0590

联系我们

QQ:951076433

在线咨询:点击这里给我发消息邮件:951076433@qq.com工作时间:周一至周五,9:30-18:30,节假日休息