这篇文章主要介绍了PHP随机生成18位不重复的订单号代码实例,代码很简单但是很实用,有需要的同学可以参考下
PHP代码:
/**
* 生成18位订单号
* $length:随机数长度
*/
function generateOrderNumber($length=4){
//14位的日期(年月日时分秒)
$date=trim(date('Ymdhis ',time()));
//初始化变量为0
$connt = 0;
//建一个新数组
$temp = array();
while($connt < $length){
//在一定范围内随机生成一个数放入数组中
$temp[] = mt_rand(0, 9);
//$data = array_unique($temp);
//去除数组中的重复值用了“翻翻法”,就是用array_flip()把数组的key和value交换两次。这种做法比用 array_unique() 快得多。
$data = array_flip(array_flip($temp));
//将数组的数量存入变量count中
$connt = count($data);
}
//为数组赋予新的键名
shuffle($data);
//数组转字符串
$str=implode(",", $data);
//替换掉逗号
$number=str_replace(',', '', $str);
return $date.$number;
}
调用示例:
<?php
//商户订单号
$number= generateOrderNumber();
?>
到此这篇关于PHP随机生成18位不重复的订单号代码实例的文章就介绍到这了,更多相关PHP随机生成18位不重复的订单号内容请搜索编程学习网以前的文章希望大家以后多多支持编程学习网!
沃梦达教程
本文标题为:PHP随机生成18位不重复的订单号代码实例
基础教程推荐
猜你喜欢
- PHP中的错误及其处理机制 2023-06-04
- laravel 解决多库下的DB::transaction()事务失效问题 2023-03-08
- php array分组,PHP中array数组的分组排序 2022-08-01
- 在Laravel中实现使用AJAX动态刷新部分页面 2023-03-02
- PHP获取MySQL执行sql语句的查询时间方法 2022-11-09
- PHP实现Redis单据锁以及防止并发重复写入 2022-10-12
- 使用PHP开发留言板功能 2023-03-13
- PHP命名空间简单用法示例 2022-12-01
- laravel ORM关联关系中的 with和whereHas用法 2023-03-02
- thinkphp3.2.3框架动态切换多数据库的方法分析 2023-03-19