php生成唯一的订单函数分享

关于生成订单号的解决方案

电子商务及类电子商务的系统越来越多,我相信订单号问题是这类系统中最常见不过的一个问题了,但今天还是想谈谈。

这几天由于工作需要接手了另外一同事前期开发的一个交易系统,原本使用的是uniqid()函数生成的。理论上也是不会出现重复,但由于一些特殊的原因,不得不重新制作一款订单号的生成函数


/**

     * 生成唯一的订单号 20110809111259232312

     * 2011-年日期

     * 08-月份

     * 09-日期

     * 11-小时

     * 12-分

     * 59-秒

     * 2323-微秒

     * 12-随机值

     * @return string

     */

    public function trade_no() {

        list($usec, $sec) = explode(" ", microtime());

        $usec = substr(str_replace('0.', '', $usec), 0 ,4);

        $str  = rand(10,99);

        return date("YmdHis").$usec.$str;

    }

以上就是本文的全部内容了,希望大家能够喜欢。