php生成单号的函数

在开发订单系统的时候,我们会经常用到订单号,订单号如何生成不重覆的?下面我们通过redis方法生成

function getOrderCode($prefix, $module, $length = 4)
{
    $key   = 'order_code:'.$module;
    $redis = (new app\util\Redis())->getRedis();
    if(!$redis->exists($key)){
        $expire = true;//第一次设置过期时间
    }
    $redis->incr($key);
    isset($expire) && $redis->expire($key, strtotime('tomorrow') - time());//设置到24点过期
    return $prefix.'-'.date('Ymd').str_pad($redis->get($key),$length,'0',STR_PAD_LEFT);
}
标签:

相关文章

发表评论