基于 Redis 数据累计的实现

需求:对上传文件进行统一编号,以 xxx-YYYYmmdd-000001为编码格式,其中YYYYmmdd为当天传的日期。

技术方案:redis,get,set,incr,expireAt即可实现。

public function GetSearial() {

     $date = date( "Ymd",time() );

 

     /*连接redis服务器*/

     $redisObj = new Redis();

     $redisObj -> connect( "url","port");        

     $redisObj -> select(0);

      

     if ( empty ( $redis->get($date) )  {

         $redisObj -> set( $date, '10000001' );     //便于后面取000001

         $redisObj -> expireAt( $date, time() + 86400 );     //设置24小时后过期

     }

     

     $searial = "xxx-" . $date . "-" . substr( $redisObj->get($date),-6 );  

     $redisObj->incr();

     return $searial;

}

 

你可能感兴趣的:(redis)