成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

PHP+Redis實(shí)戰(zhàn)教程(3):list列表類型

Leck1e / 625人閱讀

摘要:列表類型簡介列表的功能十分獨(dú)特,他可以在一個(gè)鍵下面存儲(chǔ)個(gè)可以重復(fù)的元素。其實(shí)就是把類型右邊的值換成了多個(gè)元素組成的列表。這里的代表起始位置,代表結(jié)束位置。從到,代表取出所有的值。

2、list列表類型

簡介

列表的功能十分獨(dú)特,他可以在一個(gè)鍵下面存儲(chǔ)N個(gè)可以重復(fù)的元素。其實(shí)就是把string類型右邊的值換成了多個(gè)元素組成的列表。

列表結(jié)構(gòu)

由于列表的可重復(fù)性,下面的結(jié)構(gòu)實(shí)例中,第一個(gè)元素和最后一個(gè)元素可以重復(fù)。

[
    "user":[
        "yanying",
        "zhangsan",
        "yanying"
    ]
]

操作方法

命令 行為
rpush 從列表的右邊添加一個(gè)值
lpush 從列表左邊添加一個(gè)值
rpop 從列表右邊刪除一個(gè)值
lpop 從列表左邊刪除一個(gè)值
lindex 獲取列表在給定位置上的一個(gè)元素
lrange 獲取給定范圍所有元素
$redis->rpush PHP版本從右側(cè)添加一個(gè)值
$redis->lrange PHP版本獲取范圍內(nèi)所有的元素
$redis->lindex PHP版本獲取指定索引的值
$redis->lpop PHP版本從左側(cè)刪除一個(gè)元素

演示(命令行 + PHP演示)

命令行:

向列表添加值之后,會(huì)返回 當(dāng)前的長度(包含元素個(gè)數(shù))。(這里是右側(cè)添加,左側(cè)添加同理)

rpush list-key item // (integer) 1 , 當(dāng)前列表包含元素個(gè)數(shù)
rpush list-key item2 // (integer) 2
rpush list-key item // (integer) 3 ,即使添加相同值,也是可以添加

獲取一定范圍內(nèi)的值,成功返回 范圍內(nèi)所有元素。這里的0代表起始位置,-1代表結(jié)束位置。從0到-1,代表取出所有的值。

lrange list-key 0 -1  // 該值返回的結(jié)果為:"item","item2","item"。

獲取列表里面的 某個(gè)元素

lindex list-key 1 // 獲取索引為1的元素

從列表左側(cè)刪除一個(gè)元素,成功返回 被刪除的元素

lpop list-key // 上面的列表返回"item"

再次獲取列表的 所有元素。記住,索引從0到-1

lrange list 0 -1 // 返回:"item2","item",之前最左邊的item已經(jīng)被刪除

PHP版本演示

第一步,鏈接redis數(shù)據(jù)庫

$redis = new Redis();
$redis->connect("127.0.0.1", 6379);

設(shè)置值,成功返回當(dāng)前 列表中的元素

$r = $redis->rpush("list-key","item"); // 從列表右側(cè)添加一個(gè)值item
var_dump($r);// 此時(shí),列表中有一個(gè)元素,返回int 1

同理我們?cè)偬砑?b>item2和item元素

$redis->rpush("list-key","item2"); // 含有2個(gè)元素,返回int 2
$redis->rpush("list-key","item"); // 含有3個(gè)元素,返回int 3

下面,我們獲取全部的值

$redis->lrange("tutorial-list", 0 ,-1); // 該值返回的結(jié)果為:"item","item2","item"。

我們也可以通過lindex來獲取其中某個(gè)索引的值,成功返回 索引的值

$redis->lindex("list-key",1); // 獲取索引為1的值,也就是第二個(gè):"item2"

添加完了,我們可以使用lpop從左側(cè)刪除一個(gè)元素,或者使用rpop從右側(cè)刪除一個(gè)元素,成功返回 被刪除元素的值

$r = $redis->lpop("list-key"); // 這里我們做左側(cè)刪除了一個(gè)元素,即為:"item"

我們?cè)賮硎褂?b>lrange獲取所有的元素

$redis->lrange("list-key", 0 ,-1); // 該值返回的結(jié)果為:"item2","item"。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/30450.html

相關(guān)文章

  • PHP+Redis實(shí)戰(zhàn)教程(4):set集合類型

    摘要:集合類型簡介集合和列表十分的相似,都可以存儲(chǔ)多個(gè)字符串。這里不是表示我們?cè)俅螜z查所有元素,發(fā)現(xiàn)只剩下返回版本演示第一步,鏈接數(shù)據(jù)庫我們先插入一個(gè)元素到集合。 3、set集合類型 簡介 set集合和list列表十分的相似,都可以存儲(chǔ)多個(gè)字符串。但是list列表可以存儲(chǔ)重復(fù)值,而set集合中不可重復(fù)。 集合結(jié)構(gòu) 其中的user為鍵名,其可以包含多個(gè) 不重復(fù) 的元素,各不相同 [ ...

    NikoManiac 評(píng)論0 收藏0
  • PHP+Redis實(shí)戰(zhàn)教程(1):初識(shí)Redis

    摘要:本文為實(shí)戰(zhàn)讀書筆記簡介是一個(gè)非關(guān)系型遠(yuǎn)程內(nèi)存數(shù)據(jù)庫,由于操作都在內(nèi)存中,所以的速度非???,性能十分強(qiáng)勁。同時(shí),還可以自動(dòng)的以兩種不同的方式將數(shù)據(jù)庫內(nèi)容持久化到硬盤,保證數(shù)據(jù)的完整性。數(shù)據(jù)格式支持字符串列表集合散列有序集合數(shù)據(jù)類型。 本文為《Redis實(shí)戰(zhàn)》讀書筆記 Redis簡介 Redis是一個(gè)非關(guān)系型遠(yuǎn)程內(nèi)存數(shù)據(jù)庫,由于操作都在內(nèi)存中,所以Redis的速度非???,性能十分強(qiáng)勁。 它...

    張遷 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<