zenCart如何生成订单号(前缀+时间+随机数) 详细�0�3

zenCart如何生成订单号(前缀+时间+随机数) 详细�0�3,第1张

今天介绍一种将订单号改为前缀+时间+随机数格式 主要看思想 修改方法 1将orders_id 字段改为VARCHAR 型,这样order_id 可以丌仅仅是数字了,将以下sql 导入数据库 ALTER TABLE `orders` CHANGE `orders_id` `orders_id` VARCHAR( 64 ) NOT NULL ; ALTER TABLE `orders_products` CHANGE `orders_id` `orders_id` VARCHAR( 64 ) NOT NULL ; ALTER TABLE `orders_products_attributes` CHANGE `orders_id` `orders_id` VARCHAR( 64 ) NOT NULL ; ALTER TABLE `orders_products_download` CHANGE `orders_id` `orders_id` VARCHAR( 64 ) NOT NULL ; ALTER TABLE `orders_status_history` CHANGE `orders_id` `orders_id` VARCHAR( 64 ) NOT NULL ; ALTER TABLE `orders_total` CHANGE `orders_id` `orders_id` VARCHAR( 64 ) NOT NULL ; 2打开includes\classes\orderphp 查找 function create($zf_ot_modules, $zf_mode = 2) { global $db; 其下增加 $order_prefix=’LN_’; //站群可以作为每个站订单前缀唯一识别符 $order_time=date(‘YmdHis’); //时间 $order_rand=’_’rand(1000,9000); //随机数 $order_number=$order_prefix$order_time$order_rand; 这里时间精确到秒,且加上 4 位随机数,从而保证订单号绝对丌会重复 查找 if ($_SESSION['shipping'] == ‘free_free’) { $this->info['shipping_module_code'] = $_SESSION['shipping']; } 其下的$sql_data_array 增加orders_id 键值内容 $sql_data_array = array( ‘orders_id’ => $order_number, 查找 $insert_id = $db->Insert_ID(); 将其注释删除掉,然后增加 $insert_id =$order_number;

订单号就是您在购物网站购物后获得的订单号,记录的是购物订单信息。在您需要与购物网站进行订单查询等 *** 作时,需要给购物网站提供商家订单号。来自百度百科

软件开发中我们经常会遇到生成订单号的业务逻辑来记录用户下单、物流、发票、支付、结算等信息。生成订单号的方式多种多样。大部分会参考业务需求来设计生成方式,但订单号的生成规则大同小异相差不大。下面给大家总结介绍几种订单号的生成规则以供参考。

1、 随机数方法。

2、随机数+uid方法

3、uniqid+crc64方法

4、随机字符串+crc64方法

5、Twitter SnowFlake算法方法


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/13373099.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-07-23
下一篇 2023-07-23

发表评论

登录后才能评论

评论列表(0条)

保存