Redis整理(2)之数据类型string


大同小异,redis包含了memcache的协议,所以string型数据操作基本一致,

string类型一个键所能存储的键大小512MB

回顾一下:我们应用NoSql,从浅层次上无非就用内存存缓存,也可以说是用内存存那些查询量比较频繁的数据,那么如果要缓存一片文章,文章可能有标题,时间,内容。那么我们处理其实也简单,可以将这些东西存在一个数组里,然后序列化
函数 serialize($arr),unserialize($string)
不过原则上还是应该序列化成json 或者  XML这类交换格式,我可以保证存在redis服务器上的键值可以完美被其他语言平台读取。还有被Ajax读取
函数json_encode($arr)  json_decode($string)
<?php
   $redis = new Redis();
   $redis->connect('192.168.104.10',6379);
   $title   = "This title";
   $time    =time();
   $content = "write something here";
   $value   = array('title'=>$title,'time'=>$time,'content'=>$content);
   $value   = serialize($value);//所有数据序列化一个字符串
   $redis->set('first',$value);//将序列号字符串存储进入
   
   $res =  $redis->get('first');
   print $res;
   
   $res = unserialize($res);//解序列化,回归数组
   print_r($res);
?>
//键名遵循变量命名规范!

//set 设置一个键  
$redis->set('test','123');第三个参数代表键生存时间,缺省为不限时

//get 获取一个键
$redis->get('test');

//mset 批量设置键值
$arr = array('one'=>'1','two'=>'2');
$redis->mset($arr);

//mget 批量获取键值
$arr = array('one','two');
print_r($redis->mget($arr));

//incr/decr 做增/减值操作每次+1
$redis->incr('one');   //decr
$redis->incr('one',2); //第二个参数指定增/减量
 echo $redis->get('one');

//strlen 计算值长度
$redis->strlen('one');

//append 向字符串尾加字符串长度
$redis->append('one','string');
//incrbyfloat
$redis->set('one','1');
$redis->incrbyfloat('one',2.5); //decrbyfloat 如果值不为纯数字,那么无法生效

//关于string类型的应用

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值