`

php中生成商城订单流水号

    博客分类:
  • PHP
 
阅读更多

 

    /**
     *    生成订单流水号
     *
     *    @author    xiaohu
     *    @return    string
     */
    function _gen_order_sn()
    {
        /* 选择一个随机的方案 */
        mt_srand((double) microtime() * 1000000);
        $timestamp = gmtime();
        $y = date('y', $timestamp);
        $z = date('z', $timestamp);
        $order_sn = $y . str_pad($z, 3, '0', STR_PAD_LEFT) . str_pad(mt_rand(1, 99999), 5, '0', STR_PAD_LEFT);

        /* 到数据库里查找是否已存在 */
        $model_order =& m('order');
        $orders = $model_order->find('order_sn=' . $order_sn);
        if (empty($orders))
        {
            /* 否则就使用这个订单号 */
            return $order_sn;
        }

        /* 如果有重复的,则重新生成 */
        return _gen_returns_sn();
    }

    /**
     * 获得当前格林威治时间的时间戳
     *
     * @return  integer
     */
    function gmtime()
    {
        return (time() - date('Z'));
    }

    echo _gen_order_sn();

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics