自增长计数器
时间:2021-07-01 10:21:17
帮助过:16人阅读
基于redis的自增长计数器,生成自增长数字
- /**
- * 生成自增长数字
- *
- * @param string $key 缓存key
- * @param int $step 自增长步长
- * @param int $expires 缓存过期时间,单位秒
- *
- * @return int $num;
- * @author leeyi
- */
- function incr_num($key='ddg', $step=1, $expires=0) {
- // 链接redis封装到了 \Org\Redis() 里面了
- $redis = new \Org\Redis();
- $cache_key = 'incrnum:'.$key;
- $num = $redis->handler->incrBy($cache_key, (int)$step);
- $millisecond = $expires>0 ? $expires*1000 : (get_time_235959()*1000+999);
- $redis->handler->pexpireAt($cache_key, $millisecond); // 设置过期时间
- return $num;
- }
|