LLEN key
@read,
@list,
@fast,
Returns the length of the list stored at key.
If key does not exist, it is interpreted as an empty list and 0 is returned.
An error is returned when the value stored at key is not a list.
redis> LPUSH mylist "World"
(integer) 1
redis> LPUSH mylist "Hello"
(integer) 2
redis> LLEN mylist
(integer) 2import redis
r = redis.Redis(decode_responses=True)
res1 = r.lpush("mylist", "world")
print(res1) # >>> 1
res2 = r.lpush("mylist", "hello")
print(res2) # >>> 2
res3 = r.lrange("mylist", 0, -1)
print(res3) # >>> [ "hello", "world" ]
res4 = r.rpush("mylist", "one");
print(res4) # >>> 1
res5 = r.rpush("mylist", "two")
print(res5) # >>> 2
res6 = r.rpush("mylist", "three")
print(res6) # >>> 3
res7 = r.lrange('mylist', 0, 0)
print(res7) # >>> [ 'one' ]
res8 = r.lrange('mylist', -3, 2)
print(res8) # >>> [ 'one', 'two', 'three' ]
res9 = r.lrange('mylist', -100, 100)
print(res9) # >>> [ 'one', 'two', 'three' ]
res10 = r.lrange('mylist', 5, 10)
print(res10) # >>> []
res11 = r.lpush("mylist", "World")
print(res11) # >>> 1
res12 = r.lpush("mylist", "Hello")
print(res12) # >>> 2
res13 = r.llen("mylist")
print(res13) # >>> 2
res14 = r.rpush("mylist", "hello")
print(res14) # >>> 1
res15 = r.rpush("mylist", "world")
print(res15) # >>> 2
res16 = r.lrange("mylist", 0, -1)
print(res16) # >>> [ "hello", "world" ]
res17 = r.rpush("mylist", *["one", "two", "three", "four", "five"])
print(res17) # >>> 5
res18 = r.lpop("mylist")
print(res18) # >>> "one"
res19 = r.lpop("mylist", 2)
print(res19) # >>> ['two', 'three']
res17 = r.lrange("mylist", 0, -1)
print(res17) # >>> [ "four", "five" ]
res18 = r.rpush("mylist", *["one", "two", "three", "four", "five"])
print(res18) # >>> 5
res19 = r.rpop("mylist")
print(res19) # >>> "five"
res20 = r.rpop("mylist", 2)
print(res20) # >>> ['four', 'three']
res21 = r.lrange("mylist", 0, -1)
print(res21) # >>> [ "one", "two" ]
import assert from 'node:assert';
import { createClient } from 'redis';
const client = createClient();
await client.connect().catch(console.error);
const res1 = await client.lPush('mylist', 'world');
console.log(res1); // 1
const res2 = await client.lPush('mylist', 'hello');
console.log(res2); // 2
const res3 = await client.lRange('mylist', 0, -1);
console.log(res3); // [ 'hello', 'world' ]
const res4 = await client.rPush('mylist', 'one');
console.log(res4); // 1
const res5 = await client.rPush('mylist', 'two');
console.log(res5); // 2
const res6 = await client.rPush('mylist', 'three');
console.log(res6); // 3
const res7 = await client.lRange('mylist', 0, 0);
console.log(res7); // [ 'one' ]
const res8 = await client.lRange('mylist', -3, 2);
console.log(res8); // [ 'one', 'two', 'three' ]
const res9 = await client.lRange('mylist', -100, 100);
console.log(res9); // [ 'one', 'two', 'three' ]
const res10 = await client.lRange('mylist', 5, 10);
console.log(res10); // []
const res11 = await client.lPush('mylist', 'World');
console.log(res11); // 1
const res12 = await client.lPush('mylist', 'Hello');
console.log(res12); // 2
const res13 = await client.lLen('mylist');
console.log(res13); // 2
const res14 = await client.rPush('mylist', 'hello');
console.log(res14); // 1
const res15 = await client.rPush('mylist', 'world');
console.log(res15); // 2
const res16 = await client.lRange('mylist', 0, -1);
console.log(res16); // [ 'hello', 'world' ]
const res17 = await client.rPush('mylist', ["one", "two", "three", "four", "five"]);
console.log(res17); // 5
const res18 = await client.lPop('mylist');
console.log(res18); // 'one'
const res19 = await client.lPopCount('mylist', 2);
console.log(res19); // [ 'two', 'three' ]
const res20 = await client.lRange('mylist', 0, -1);
console.log(res20); // [ 'four', 'five' ]
const res21 = await client.rPush('mylist', ["one", "two", "three", "four", "five"]);
console.log(res21); // 5
const res22 = await client.rPop('mylist');
console.log(res22); // 'five'
const res23 = await client.rPopCount('mylist', 2);
console.log(res23); // [ 'four', 'three' ]
const res24 = await client.lRange('mylist', 0, -1);
console.log(res24); // [ 'one', 'two' ]
await client.close();
importjava.util.List;importredis.clients.jedis.UnifiedJedis;import staticorg.junit.jupiter.api.Assertions.assertEquals;publicclass CmdsListExample{publicvoidrun(){UnifiedJedisjedis=newUnifiedJedis("redis://localhost:6379");longlLenResult1=jedis.lpush("mylist","World");System.out.println(lLenResult1);// >>> 1longlLenResult2=jedis.lpush("mylist","Hello");System.out.println(lLenResult2);// >>> 2longlLenResult3=jedis.llen("mylist");System.out.println(lLenResult3);// >>> 2longlPopResult1=jedis.rpush("mylist","one","two","three","four","five");System.out.println(lPopResult1);// >>> 5StringlPopResult2=jedis.lpop("mylist");System.out.println(lPopResult2);// >>> oneList<String>lPopResult3=jedis.lpop("mylist",2);System.out.println(lPopResult3);// >>> [two, three]List<String>lPopResult4=jedis.lrange("mylist",0,-1);System.out.println(lPopResult4);// >>> [four, five]longlPushResult1=jedis.lpush("mylist","World");System.out.println(lPushResult1);// >>> 1longlPushResult2=jedis.lpush("mylist","Hello");System.out.println(lPushResult2);// >>> 2List<String>lPushResult3=jedis.lrange("mylist",0,-1);System.out.println(lPushResult3);// >>> [Hello, World]longlRangeResult1=jedis.rpush("mylist","one","two","three");System.out.println(lRangeResult1);// >>> 3List<String>lRangeResult2=jedis.lrange("mylist",0,0);System.out.println(lRangeResult2);// >>> [one]List<String>lRangeResult3=jedis.lrange("mylist",-3,2);System.out.println(lRangeResult3);// >>> [one, two, three]List<String>lRangeResult4=jedis.lrange("mylist",-100,100);System.out.println(lRangeResult4);// >>> [one, two, three]List<String>lRangeResult5=jedis.lrange("mylist",5,10);System.out.println(lRangeResult5);// >>> []longrPopResult1=jedis.rpush("mylist","one","two","three","four","five");System.out.println(rPopResult1);// >>> 5StringrPopResult2=jedis.rpop("mylist");System.out.println(rPopResult2);// >>> fiveList<String>rPopResult3=jedis.rpop("mylist",2);System.out.println(rPopResult3);// >>> [four, three]List<String>rPopResult4=jedis.lrange("mylist",0,-1);System.out.println(rPopResult4);// >>> [one, two]longrPushResult1=jedis.rpush("mylist","hello");System.out.println(rPushResult1);// >>> 1longrPushResult2=jedis.rpush("mylist","world");System.out.println(rPushResult2);// >>> 2List<String>rPushResult3=jedis.lrange("mylist",0,-1);System.out.println(rPushResult3);// >>> [hello, world]jedis.close();}}packageio.redis.examples.async;importio.lettuce.core.*;importio.lettuce.core.api.async.RedisAsyncCommands;importio.lettuce.core.api.StatefulRedisConnection;importjava.util.concurrent.CompletableFuture;publicclass CmdsListExample{publicvoidrun(){RedisClientredisClient=RedisClient.create("redis://localhost:6379");try(StatefulRedisConnection<String,String>connection=redisClient.connect()){RedisAsyncCommands<String,String>asyncCommands=connection.async();CompletableFuture<Void>lpush=asyncCommands.lpush("mylist","world").thenCompose(res1->{System.out.println(res1);// >>> 1returnasyncCommands.lpush("mylist","hello");}).thenCompose(res2->{System.out.println(res2);// >>> 2returnasyncCommands.lrange("mylist",0,-1);}).thenAccept(res3->System.out.println(res3))// >>> [hello, world].toCompletableFuture();lpush.join();CompletableFuture<Void>lrange=asyncCommands.rpush("mylist","one").thenCompose(res4->{System.out.println(res4);// >>> 1returnasyncCommands.rpush("mylist","two");}).thenCompose(res5->{System.out.println(res5);// >>> 2returnasyncCommands.rpush("mylist","three");}).thenCompose(res6->{System.out.println(res6);// >>> 3returnasyncCommands.lrange("mylist",0,0);}).thenCompose(res7->{System.out.println(res7);// >>> [one]returnasyncCommands.lrange("mylist",-3,2);}).thenCompose(res8->{System.out.println(res8);// >>> [one, two, three]returnasyncCommands.lrange("mylist",-100,100);}).thenCompose(res9->{System.out.println(res9);// >>> [one, two, three]returnasyncCommands.lrange("mylist",5,10);}).thenAccept(res10->System.out.println(res10))// >>> [].toCompletableFuture();lrange.join();CompletableFuture<Void>llen=asyncCommands.lpush("mylist","World").thenCompose(res11->{System.out.println(res11);// >>> 1returnasyncCommands.lpush("mylist","Hello");}).thenCompose(res12->{System.out.println(res12);// >>> 2returnasyncCommands.llen("mylist");}).thenAccept(res13->System.out.println(res13))// >>> 2.toCompletableFuture();llen.join();CompletableFuture<Void>rpush=asyncCommands.rpush("mylist","hello").thenCompose(res14->{System.out.println(res14);// >>> 1returnasyncCommands.rpush("mylist","world");}).thenCompose(res15->{System.out.println(res15);// >>> 2returnasyncCommands.lrange("mylist",0,-1);}).thenAccept(res16->System.out.println(res16))// >>> [hello, world].toCompletableFuture();rpush.join();CompletableFuture<Void>lpop=asyncCommands.rpush("mylist","one","two","three","four","five").thenCompose(res17->{System.out.println(res17);// >>> 5returnasyncCommands.lpop("mylist");}).thenCompose(res18->{System.out.println(res18);// >>> onereturnasyncCommands.lpop("mylist",2);}).thenCompose(res19->{System.out.println(res19);// >>> [two, three]returnasyncCommands.lrange("mylist",0,-1);}).thenAccept(res17_final->System.out.println(res17_final))// >>> [four, five].toCompletableFuture();lpop.join();CompletableFuture<Void>rpop=asyncCommands.rpush("mylist","one","two","three","four","five").thenCompose(res18->{System.out.println(res18);// >>> 5returnasyncCommands.rpop("mylist");}).thenCompose(res19->{System.out.println(res19);// >>> fivereturnasyncCommands.rpop("mylist",2);}).thenCompose(res20->{System.out.println(res20);// >>> [four, three]returnasyncCommands.lrange("mylist",0,-1);}).thenAccept(res21->System.out.println(res21))// >>> [one, two].toCompletableFuture();rpop.join();}finally{redisClient.shutdown();}}}packageio.redis.examples.reactive;importio.lettuce.core.*;importio.lettuce.core.api.reactive.RedisReactiveCommands;importio.lettuce.core.api.StatefulRedisConnection;importreactor.core.publisher.Mono;publicclass CmdsListExample{publicvoidrun(){RedisClientredisClient=RedisClient.create("redis://localhost:6379");try(StatefulRedisConnection<String,String>connection=redisClient.connect()){RedisReactiveCommands<String,String>reactiveCommands=connection.reactive();Mono<Void>lpush=reactiveCommands.lpush("mylist","world").doOnNext(res1->{System.out.println(res1);// >>> 1}).flatMap(res1->reactiveCommands.lpush("mylist","hello")).doOnNext(res2->{System.out.println(res2);// >>> 2}).flatMap(res2->reactiveCommands.lrange("mylist",0,-1).collectList()).doOnNext(res3->{System.out.println(res3);// >>> [hello, world]}).then();lpush.block();reactiveCommands.del("mylist").block();Mono<Void>lrange=reactiveCommands.rpush("mylist","one").doOnNext(res4->{System.out.println(res4);// >>> 1}).flatMap(res4->reactiveCommands.rpush("mylist","two")).doOnNext(res5->{System.out.println(res5);// >>> 2}).flatMap(res5->reactiveCommands.rpush("mylist","three")).doOnNext(res6->{System.out.println(res6);// >>> 3}).flatMap(res6->reactiveCommands.lrange("mylist",0,0).collectList()).doOnNext(res7->{System.out.println(res7);// >>> [one]}).flatMap(res7->reactiveCommands.lrange("mylist",-3,2).collectList()).doOnNext(res8->{System.out.println(res8);// >>> [one, two, three]}).flatMap(res8->reactiveCommands.lrange("mylist",-100,100).collectList()).doOnNext(res9->{System.out.println(res9);// >>> [one, two, three]}).flatMap(res9->reactiveCommands.lrange("mylist",5,10).collectList()).doOnNext(res10->{System.out.println(res10);// >>> []}).then();lrange.block();reactiveCommands.del("mylist").block();Mono<Void>llen=reactiveCommands.lpush("mylist","World").doOnNext(res11->{System.out.println(res11);// >>> 1}).flatMap(res11->reactiveCommands.lpush("mylist","Hello")).doOnNext(res12->{System.out.println(res12);// >>> 2}).flatMap(res12->reactiveCommands.llen("mylist")).doOnNext(res13->{System.out.println(res13);// >>> 2}).then();llen.block();reactiveCommands.del("mylist").block();Mono<Void>rpush=reactiveCommands.rpush("mylist","hello").doOnNext(res14->{System.out.println(res14);// >>> 1}).flatMap(res14->reactiveCommands.rpush("mylist","world")).doOnNext(res15->{System.out.println(res15);// >>> 2}).flatMap(res15->reactiveCommands.lrange("mylist",0,-1).collectList()).doOnNext(res16->{System.out.println(res16);// >>> [hello, world]}).then();rpush.block();reactiveCommands.del("mylist").block();Mono<Void>lpop=reactiveCommands.rpush("mylist","one","two","three","four","five").doOnNext(res17->{System.out.println(res17);// >>> 5}).flatMap(res17->reactiveCommands.lpop("mylist")).doOnNext(res18->{System.out.println(res18);// >>> one}).flatMap(res18->reactiveCommands.lpop("mylist",2).collectList()).doOnNext(res19->{System.out.println(res19);// >>> [two, three]}).flatMap(res19->reactiveCommands.lrange("mylist",0,-1).collectList()).doOnNext(res17_final->{System.out.println(res17_final);// >>> [four, five]}).then();lpop.block();reactiveCommands.del("mylist").block();Mono<Void>rpop=reactiveCommands.rpush("mylist","one","two","three","four","five").doOnNext(res18->{System.out.println(res18);// >>> 5}).flatMap(res18->reactiveCommands.rpop("mylist")).doOnNext(res19->{System.out.println(res19);// >>> five}).flatMap(res19->reactiveCommands.rpop("mylist",2).collectList()).doOnNext(res20->{System.out.println(res20);// >>> [four, three]}).flatMap(res20->reactiveCommands.lrange("mylist",0,-1).collectList()).doOnNext(res21->{System.out.println(res21);// >>> [one, two]}).then();rpop.block();reactiveCommands.del("mylist").block();}finally{redisClient.shutdown();}}}package example_commands_test
import (
"context"
"fmt"
"github.com/redis/go-redis/v9"
)
func ExampleClient_cmd_llen() {
ctx := context.Background()
rdb := redis.NewClient(&redis.Options{
Addr: "localhost:6379",
Password: "", // no password docs
DB: 0, // use default DB
})
lPushResult1, err := rdb.LPush(ctx, "mylist", "World").Result()
if err != nil {
panic(err)
}
fmt.Println(lPushResult1) // >>> 1
lPushResult2, err := rdb.LPush(ctx, "mylist", "Hello").Result()
if err != nil {
panic(err)
}
fmt.Println(lPushResult2) // >>> 2
lLenResult, err := rdb.LLen(ctx, "mylist").Result()
if err != nil {
panic(err)
}
fmt.Println(lLenResult) // >>> 2
}
func ExampleClient_cmd_lpop() {
ctx := context.Background()
rdb := redis.NewClient(&redis.Options{
Addr: "localhost:6379",
Password: "", // no password docs
DB: 0, // use default DB
})
RPushResult, err := rdb.RPush(ctx,
"mylist", "one", "two", "three", "four", "five",
).Result()
if err != nil {
panic(err)
}
fmt.Println(RPushResult) // >>> 5
lPopResult, err := rdb.LPop(ctx, "mylist").Result()
if err != nil {
panic(err)
}
fmt.Println(lPopResult) // >>> one
lPopCountResult, err := rdb.LPopCount(ctx, "mylist", 2).Result()
if err != nil {
panic(err)
}
fmt.Println(lPopCountResult) // >>> [two three]
lRangeResult, err := rdb.LRange(ctx, "mylist", 0, -1).Result()
if err != nil {
panic(err)
}
fmt.Println(lRangeResult) // >>> [four five]
}
func ExampleClient_cmd_lpush() {
ctx := context.Background()
rdb := redis.NewClient(&redis.Options{
Addr: "localhost:6379",
Password: "", // no password docs
DB: 0, // use default DB
})
lPushResult1, err := rdb.LPush(ctx, "mylist", "World").Result()
if err != nil {
panic(err)
}
fmt.Println(lPushResult1) // >>> 1
lPushResult2, err := rdb.LPush(ctx, "mylist", "Hello").Result()
if err != nil {
panic(err)
}
fmt.Println(lPushResult2) // >>> 2
lRangeResult, err := rdb.LRange(ctx, "mylist", 0, -1).Result()
if err != nil {
panic(err)
}
fmt.Println(lRangeResult) // >>> [Hello World]
}
func ExampleClient_cmd_lrange() {
ctx := context.Background()
rdb := redis.NewClient(&redis.Options{
Addr: "localhost:6379",
Password: "", // no password docs
DB: 0, // use default DB
})
RPushResult, err := rdb.RPush(ctx, "mylist",
"one", "two", "three",
).Result()
if err != nil {
panic(err)
}
fmt.Println(RPushResult) // >>> 3
lRangeResult1, err := rdb.LRange(ctx, "mylist", 0, 0).Result()
if err != nil {
panic(err)
}
fmt.Println(lRangeResult1) // >>> [one]
lRangeResult2, err := rdb.LRange(ctx, "mylist", -3, 2).Result()
if err != nil {
panic(err)
}
fmt.Println(lRangeResult2) // >>> [one two three]
lRangeResult3, err := rdb.LRange(ctx, "mylist", -100, 100).Result()
if err != nil {
panic(err)
}
fmt.Println(lRangeResult3) // >>> [one two three]
lRangeResult4, err := rdb.LRange(ctx, "mylist", 5, 10).Result()
if err != nil {
panic(err)
}
fmt.Println(lRangeResult4) // >>> []
}
func ExampleClient_cmd_rpop() {
ctx := context.Background()
rdb := redis.NewClient(&redis.Options{
Addr: "localhost:6379",
Password: "", // no password docs
DB: 0, // use default DB
})
rPushResult, err := rdb.RPush(ctx, "mylist",
"one", "two", "three", "four", "five",
).Result()
if err != nil {
panic(err)
}
fmt.Println(rPushResult) // >>> 5
rPopResult, err := rdb.RPop(ctx, "mylist").Result()
if err != nil {
panic(err)
}
fmt.Println(rPopResult) // >>> five
rPopCountResult, err := rdb.RPopCount(ctx, "mylist", 2).Result()
if err != nil {
panic(err)
}
fmt.Println(rPopCountResult) // >>> [four three]
lRangeResult, err := rdb.LRange(ctx, "mylist", 0, -1).Result()
if err != nil {
panic(err)
}
fmt.Println(lRangeResult) // >>> [one two]
}
func ExampleClient_cmd_rpush() {
ctx := context.Background()
rdb := redis.NewClient(&redis.Options{
Addr: "localhost:6379",
Password: "", // no password docs
DB: 0, // use default DB
})
rPushResult1, err := rdb.RPush(ctx, "mylist", "Hello").Result()
if err != nil {
panic(err)
}
fmt.Println(rPushResult1) // >>> 1
rPushResult2, err := rdb.RPush(ctx, "mylist", "World").Result()
if err != nil {
panic(err)
}
fmt.Println(rPushResult2) // >>> 2
lRangeResult, err := rdb.LRange(ctx, "mylist", 0, -1).Result()
if err != nil {
panic(err)
}
fmt.Println(lRangeResult) // >>> [Hello World]
}
using NRedisStack.Tests;
using StackExchange.Redis;
public class CmdsListExample
{
public void Run()
{
var muxer = ConnectionMultiplexer.Connect("localhost:6379");
var db = muxer.GetDatabase();
long lLenResult1 = db.ListLeftPush("mylist", "World");
Console.WriteLine(lLenResult1); // >>> 1
long lLenResult2 = db.ListLeftPush("mylist", "Hello");
Console.WriteLine(lLenResult2); // >>> 2
long lLenResult3 = db.ListLength("mylist");
Console.WriteLine(lLenResult3); // >>> 2
// Tests for 'llen' step.
long lPopResult1 = db.ListRightPush("mylist", ["one", "two", "three", "four", "five"]);
Console.WriteLine(lPopResult1); // >>> 5
RedisValue lPopResult2 = db.ListLeftPop("mylist");
Console.WriteLine(lPopResult2); // >>> one
RedisValue[] lPopResult3 = db.ListLeftPop("mylist", 2);
Console.WriteLine($"[{string.Join(", ", lPopResult3)}]");
// >>> [two, three]
RedisValue[] lPopResult4 = db.ListRange("mylist", 0, -1);
Console.WriteLine($"[{string.Join(", ", lPopResult4)}]");
// >>> [four, five]
// Tests for 'lpop' step.
long lPushResult1 = db.ListLeftPush("mylist", "World");
Console.WriteLine(lPushResult1); // >>> 1
long lPushResult2 = db.ListLeftPush("mylist", "Hello");
Console.WriteLine(lPushResult2); // >>> 2
RedisValue[] lPushResult3 = db.ListRange("mylist", 0, -1);
Console.WriteLine($"[{string.Join(", ", lPushResult3)}]");
// >>> [Hello, World]
// Tests for 'lpush' step.
long lRangeResult1 = db.ListRightPush("mylist", ["one", "two", "three"]);
Console.WriteLine(lRangeResult1); // >>> 3
RedisValue[] lRangeResult2 = db.ListRange("mylist", 0, 0);
Console.WriteLine($"[{string.Join(", ", lRangeResult2)}]");
// >>> [one]
RedisValue[] lRangeResult3 = db.ListRange("mylist", -3, 2);
Console.WriteLine($"[{string.Join(", ", lRangeResult3)}]");
// >>> [one, two, three]
RedisValue[] lRangeResult4 = db.ListRange("mylist", -100, 100);
Console.WriteLine($"[{string.Join(", ", lRangeResult4)}]");
// >>> [one, two, three]
RedisValue[] lRangeResult5 = db.ListRange("mylist", 5, 10);
Console.WriteLine($"[{string.Join(", ", lRangeResult5)}]");
// >>> []
// Tests for 'lrange' step.
long rPopResult1 = db.ListRightPush("mylist", ["one", "two", "three", "four", "five"]);
Console.WriteLine(rPopResult1); // >>> 5
RedisValue rPopResult2 = db.ListRightPop("mylist");
Console.WriteLine(rPopResult2); // >>> five
RedisValue[] rPopResult3 = db.ListRightPop("mylist", 2);
Console.WriteLine($"[{string.Join(", ", rPopResult3)}]");
// >>> [four, three]
RedisValue[] rPopResult4 = db.ListRange("mylist", 0, -1);
Console.WriteLine($"[{string.Join(", ", rPopResult4)}]");
// >>> [one, two]
// Tests for 'rpop' step.
long rPushResult1 = db.ListRightPush("mylist", "hello");
Console.WriteLine(rPushResult1); // >>> 1
long rPushResult2 = db.ListRightPush("mylist", "world");
Console.WriteLine(rPushResult2); // >>> 2
RedisValue[] rPushResult3 = db.ListRange("mylist", 0, -1);
Console.WriteLine($"[{string.Join(", ", rPushResult3)}]");
// >>> [hello, world]
// Tests for 'rpush' step.
}
}
<?php
require 'vendor/autoload.php';
use Predis\Client as PredisClient;
class CmdListTest
{
public function testCmdList() {
$r = new PredisClient([
'scheme' => 'tcp',
'host' => '127.0.0.1',
'port' => 6379,
'password' => '',
'database' => 0,
]);
$res1 = $r->lpush('mylist', 'world');
echo $res1 . PHP_EOL;
// >>> 1
$res2 = $r->lpush('mylist', 'hello');
echo $res2 . PHP_EOL;
// >>> 2
$res3 = $r->lrange('mylist', 0, -1);
echo json_encode($res3) . PHP_EOL;
// >>> ["hello","world"]
$res4 = $r->rpush('mylist', 'one');
echo $res4 . PHP_EOL;
// >>> 1
$res5 = $r->rpush('mylist', 'two');
echo $res5 . PHP_EOL;
// >>> 2
$res6 = $r->rpush('mylist', 'three');
echo $res6 . PHP_EOL;
// >>> 3
$res7 = $r->lrange('mylist', 0, 0);
echo json_encode($res7) . PHP_EOL;
// >>> ["one"]
$res8 = $r->lrange('mylist', -3, 2);
echo json_encode($res8) . PHP_EOL;
// >>> ["one","two","three"]
$res9 = $r->lrange('mylist', -100, 100);
echo json_encode($res9) . PHP_EOL;
// >>> ["one","two","three"]
$res10 = $r->lrange('mylist', 5, 10);
echo json_encode($res10) . PHP_EOL;
// >>> []
$res11 = $r->lpush('mylist', 'World');
echo $res11 . PHP_EOL;
// >>> 1
$res12 = $r->lpush('mylist', 'Hello');
echo $res12 . PHP_EOL;
// >>> 2
$res13 = $r->llen('mylist');
echo $res13 . PHP_EOL;
// >>> 2
$res14 = $r->rpush('mylist', 'hello');
echo $res14 . PHP_EOL;
// >>> 1
$res15 = $r->rpush('mylist', 'world');
echo $res15 . PHP_EOL;
// >>> 2
$res16 = $r->lrange('mylist', 0, -1);
echo json_encode($res16) . PHP_EOL;
// >>> ["hello","world"]
$res17 = $r->rpush('mylist', 'one', 'two', 'three', 'four', 'five');
echo $res17 . PHP_EOL;
// >>> 5
$res18 = $r->lpop('mylist');
echo $res18 . PHP_EOL;
// >>> one
$res19 = $r->lpop('mylist', 2);
echo json_encode($res19) . PHP_EOL;
// >>> ["two","three"]
$res20 = $r->lrange('mylist', 0, -1);
echo json_encode($res20) . PHP_EOL;
// >>> ["four","five"]
$res21 = $r->rpush('mylist', 'one', 'two', 'three', 'four', 'five');
echo $res21 . PHP_EOL;
// >>> 5
$res22 = $r->rpop('mylist');
echo $res22 . PHP_EOL;
// >>> five
$res23 = $r->rpop('mylist', 2);
echo json_encode($res23) . PHP_EOL;
// >>> ["four","three"]
$res24 = $r->lrange('mylist', 0, -1);
echo json_encode($res24) . PHP_EOL;
// >>> ["one","two"]
}
}
Give these commands a try in the interactive console:
| Redis Enterprise |
Redis Cloud |
Notes |
|---|---|---|
| ✅ Standard ✅ Active-Active |
✅ Standard ✅ Active-Active |