PHP生成订单号

//生成订单号
function generate_trade_no(array $data, $ziptime = true) {
    ksort($data); // 根据数组的键值对数组重新排序
    $hashtext = md5(json_encode($data)); // 把数组格式化为JSON字符串并生成MD5签名
    $time = date('YmdHis');
    if ($ziptime) {
        $time = base_convert($time, 10, 32); // 使用32进制将14位时间戳压缩到9位32进制值
    }
    $trade_no = $time . substr($hashtext, 8, 16); // 把MD5签名截取16位, 并在签名加上14位或9位日期时间戳, 组成30位或25位字符串
    return $trade_no;
}

发表评论

电子邮件地址不会被公开。 必填项已用*标注