PHP+Redis:hash散列类型
3、hash散列类型
简介
hash散列类似于一个小型的Redis数据库
一个散列可以包含多个键值对
散列的每个键都不能重复,各不相同,无序排列
其值可以是字符串或数字值
对于数字值,可以执行自增或者自减操作
散列结构
下面的结构中,user代表键名,其可以包含多个不同的键值对
[ "user":[ "name1":"yanying1", "name2":"yanying2", "name3":"yanying3" ] ]
操作方法
演示(命令行 + PHP演示)
命令行:
首先,我们添加一个键值对到散列。如果 成功则返回1;如果键已经存在,返回0
hset hash-key sub-key1 value1 // 返回 1
我们再添加一个不存在的键值对
hset hash-key sub-key2 value2 // 返回 1
这个时候,散列中已经存在键sub-key1和sub-key2,接下来我们再添加一个相同的键sub-key1到散列中,看看会发生什么:
hset hash-key sub-key1 value1 // 返回 0,由于该键已经存在
下面我们通过hget获取一个给定键sub-key1的值。
hget hash-key sub-key1 // "value1"
成功获取了一个值。我们再获取添加的所有元素看看,刚刚的到底添加了哪几个值
hgetall hash-key
其结果如下。我们发现,第一个结果为第一个键值对的键,第二个结果为键值对的值,以此类推,每两个为一组。
"sub-key1""value1""sub-key2""value2"
下面我们试着删除一个键试试,我们会发现如果 该键之前存在于散列中,那么删除时候则返回1,否则,返回0
hdel hash-key sub-key1 // 该键之前存在于散列,返回1
我们再试着删除一次sub-key1,发现当删除 不存在的键的时候,返回结果0
hdel hash-key sub-key1
我们再次获取全部键值对,看看还剩些什么。
hgetall hash-key
其结果为,少了两个结果,毕竟刚刚删除了一个键值对
"sub-key1""value1"
PHP版本演示
第一步,链接redis数据库
$redis = new Redis();$redis->connect('127.0.0.1', 6379);
我们先插入一个键值对到hash-key散列。1代表插入成功;0元素代表已经存在
$redis->hset('hash-key','sub-key1','value1'); // int 1,元素插入成功,之前不存在该键
我们再次插入相同键值对
$redis->hset('hash-key','sub-key1','value1'); // int 0,元素插入失败,该键已经存在
为了下面的演示使用,我们继续插入一些其他的值
$redis->hset('hash-key','sub-key2','value2'); // int 0
下面我们使用hget获取键对应的值。我们试试获取sub-key2的值。
$redis->hget('hash-key','sub-key2'); // 'value2'
获取了一个后,我们在尝试使用hgetall获取刚刚插入的全部值,看看里面包含哪些键值对
$redis->hgetall('hash-key');
获得结果,是一个包含完整键值得数组
array (size=2) 'sub-key1' => string 'value1' (length=6) 'sub-key2' => string 'value2' (length=6)
查看完了所有的键值对,我们尝试删除其中一个键。 如果之前键存在于散列中,则返回1,反之,返回0
$redis->hdel('hash-key','sub-key1'); // 该键之前存在,返回int 1
我们再次尝试删除sub-key1键,发现其返回0. 则说明该键不存在集合中,删除失败
$redis->hdel('hash-key','sub-key1'); // 该键不存在,返回int 0
下面我们使用hgetall查看下散列中还剩余的所有键值对
$redis->hgetall('hash-key');
发现,只返回了包含一个键值对的数组。
array (size=1) 'sub-key2' => string 'value2' (length=6)
原因即是,刚刚sub-key1已经被删除

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



