安静
PHP技术博客

140822 redis哈希类型 的 hset & hmset[转载]

redis 的哈希类型是每一个 key 都对应一个 HashTable.比较适合存储对象或者数组。

hset

描述:将哈希表key中的域field的值设为value。如果key不存在,一个新的哈希表被创建并进行HSET操作。如果域field已经存在于哈希表中,旧值将被覆盖。
参数:key field value
返回值:如果field是哈希表中的一个新建域,并且值设置成功,返回1。如果哈希表中域field已经存在且旧值已被新值覆盖,返回0。

hmset

描述:同时将多个field – value(域-值)对设置到哈希表key中。此命令会覆盖哈希表中已存在的域。如果key不存在,一个空哈希表被创建并执行HMSET操作。
参数:key field value [field value …]
返回值:如果命令执行成功,返回OK。当key不是哈希表(hash)类型时,返回一个错误。

hmget

描述:返回哈希表key中,一个或多个给定域的值。如果给定的域不存在于哈希表,那么返回一个nil值。因为不存在的key被当作一个空哈希表来处理,所以对一个不存在的key进行HMGET操作将返回一个只带有nil值的表。
参数:key field [field …]
返回值:一个包含多个给定域的关联值的表,表值的排列顺序和给定域参数的请求顺序一样。

hgetall

描述:返回哈希表key中,所有的域和值。在返回值里,紧跟每个域名(field name)之后是域的值(value),所以返回值的长度是哈希表大小的两倍。
参数:key
返回值:以列表形式返回哈希表的域和域的值。 若key不存在,返回空列表。

用于存储用户信息的:

<?php

$redis = new Redis();

$redis -> connect(‘127.0.0.1’, 6379);

$redis -> set(‘my_php_redis’, ‘install phpredis’);

echo $redis -> get(‘my_php_redis’);

$redis -> hset(‘zhlinfo’, ‘name’, ‘zhl’);

$redis -> hset(‘zhlinfo’, ‘age’, 26);

$redis -> hset(‘zhlinfo’, ‘address’, ‘China Beijing’);

var_dump($redis -> hgetall(‘zhlinfo’));

echo $redis -> hget(‘zhlinfo’, ‘name’);

echo $redis -> hget(‘zhlinfo’, ‘age’);

echo $redis -> hget(‘zhlinfo’, ‘address’);

$arr = array(‘name’ => ‘cjq’, ‘age’=> ’23’, ‘address’ => ‘China Beijing’, ‘hobby’=>’travelling’);

$redis -> hmset(‘cjqinfo’, $arr);

var_dump($redis->hmget(‘cjqinfo’));

echo $redis->hget(‘cjqinfo’,’hobby’);

$redis -> setTimeout(‘cjqinfo’, 5); //设置过期时间

sleep(5);

echo 5;

var_dump($redis->hmget(‘cjqinfo’));

出处http://dreameng.blog.51cto.com/1187899/1335461

赞(0) 打赏
未经允许不得转载:AJ's Blog » 140822 redis哈希类型 的 hset & hmset[转载]
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏