A-A+
修改ecshop订单号生成规则
ecshop 中生成订单号是有规则的,负责生成订单的函数是 /includes/lib_order.php 文件中的 get_order_sn() 函数,我们看一下生成订单函数的返回值是什么,如下所示:
return date('Ymd') . str_pad(mt_rand(1, 99999), 5, '0', STR_PAD_LEFT);
也就是“年月日 + 5位随机数字,例如:2015011718830” 这样的形式了,是按照时间+随机数来生成一个订单的,这样其实就已经很规范了,但如果我们想要更改成我们自己制定的订单规则呢,下面夏日博客就来分享一下修改方法,实质就是修改生成订单函数的返回值,比如我们想要生成如下形式:
“SD” + 年月日 + 7位随机数字,那么就可以进行如下的修改:
将:return date('Ymd') . str_pad(mt_rand(1, 99999), 5, '0', STR_PAD_LEFT);
修改为:return 'SD'.date('Ymd') . str_pad(mt_rand(1, 9999999), 7, '0', STR_PAD_LEFT);
这仅是一个简单的例子,我们可以通过这个例子进行举一返三,修改成自己更有个性的订单编号。