<?php
namespace app\index\controller;
use Redis;
class Index
{
public function index()
{
$redis = new Redis();
$redis->connect('127.0.0.1', 6379);
$redis->flushAll();
// lPush()将一个或多个值插入列表的左侧或头部
echo $redis->lPush('k1','v1');//1
echo $redis->lPush('k1','v1');//2
echo $redis->lPush('k1','v1');//3
$lp = $redis->lRange('k1',0,-1);
var_dump($lp);//array(3) { [0]=> string(2) "v1" [1]=> string(2) "v1" [2]=> string(2) "v1" }
echo "<hr/>";
// lPush()将一个或多个值插入已存在的列表的左侧或头部,注意是已存在的列表
// 也就是在已存在的列表追加值
echo $redis->lPushx('x1','x1'); //0
echo $redis->lPushx('x1','x1'); //0
echo $redis->lPushx('k1','k1x1'); //4 因为列表不存在
echo $redis->lPushx('k1','k1x1'); //5 因为列表存在
$lpx = $redis->lRange('x1',0,-1);
$lpx2 = $redis->lRange('k1',0,-1);
var_dump($lpx);//array(0) { }
var_dump($lpx2);//array(5) { [0]=> string(4) "k1x1" [1]=> string(4) "k1x1" [2]=> string(2) "v1" [3]=> string(2) "v1" [4]=> string(2) "v1" }
echo "<hr/>";
// lPush()将一个或多个值插入列表的右侧或底部
echo $redis->Rpush('k2','v2');//1
echo $redis->Rpush('k2','v2');//2
echo $redis->Rpush('k2','v2');//3
$rp = $redis->lRange('k2',0,-1);
var_dump($rp);//array(3) { [0]=> string(2) "v2" [1]=> string(2) "v2" [2]=> string(2) "v2" }
echo "<hr/>";
// rPushx()将一个或多个值插入已存在的列表的右侧或底部,注意是已存在的列表
echo $redis->Rpushx('x2','v2');// 0 因为列表不存在
echo $redis->Rpushx('x2','v2');//0
echo $redis->Rpushx('k2','v2');//4 因为列表存在
echo $redis->Rpushx('k2','v2');//5
$rp1 = $redis->lRange('x2',0,-1);
$rp2 = $redis->lRange('k2',0,-1);
var_dump($rp1);// array(0) { }
var_dump($rp2); //array(5) { [0]=> string(2) "v2" [1]=> string(2) "v2" [2]=> string(2) "v2" [3]=> string(2) "v2" [4]=> string(2) "v2" }
}
}