php生成20位编号(1000个会员同一微秒提订单,重复机率为1%)
/**
* 生成20位编号(时间+微秒+随机数+会员ID%1000),该值会传给第三方支付接口
* 长度 =12位 + 3位 + 2位 + 3位 = 20位
* 1000个会员同一微秒提订单,重复机率为1/100
* @return string
*/
function makePaySn($member_id) {
return date('ymdHis', time()).sprintf('%03d', (float) microtime() * 1000) .mt_rand(10, 99).sprintf('%03d', intval($member_id) % 1000);
}