Redis LIST分页

list是Redis一个链表结构,主要功能是push、pop、获取一个范围的所有值等等。操作中key理解为链表的名字。

先向Redis插入25万的数据

$redis = new Redis();
$redis->connect('localhost',6379);

for ($i=0;$i<250000;$i++)
$redis->lpush('mylist',$i);

我机器的配置,I3/4G。插入速度还是挺快的,3秒不到。

$redis = new Redis();
$redis->connect('localhost',6379);

$length = $redis->llen('mylist');

$pagesize = 20;
$pageno = max(1,$_GET['page']);
$totalpage = ceil($length/$pagesize);

$start = ($pageno-1)*$pagesize;
$end = $start+$pagesize;

$lists = $redis->lrange('mylist',$start,$end);

var_dump($lists);

主要几个函数:

lpush:

key value [value …]
从队到左边入队一个元素

llen:

key
获取名称为key的列表元素的长度(数据个数)

lrange:

LRANGE key start stop
从列表中获取指定返回的元素

去打赏

您的支持将鼓励我们继续创作!

[微信] 扫描二维码打赏

发表评论

电子邮件地址不会被公开。