本文为我阅读了 redis参考手册 之后结合 博友的博客 编写,注意 php_redis 和 redis-cli 的区别(主要是返回值类型和参数用法)

目录:

string(字符串)
SET SETNX SETEX SETRANGE MSET MSETNX APPEND
GET MGET GETRANGE GETSET STRLEN INCR INCRBY
INCRBYFLOAT DECR DECRBY SETBIT GETBIT    

string(字符串)

1、SET

Redis SET 命令用于设置给定 key 的值。如果 key 已经存储其他值, SET 就覆写旧值,且无视类型。

语法:

redis 127.0.0.1:6379> SET KEY_NAME VALUE

返回值: 设置成功时返回 OK 。当seconds参数不合法时,返回一个错误。

可用版本:>= 2.0.0

时间复杂度:O(1)

具体实例:

<?php
$redis = new redis();
$redis -> connect('127.0.0.1',6379);
$redis -> flushAll(); // This first case: 最字符串类型的 key 进行 set
$redis -> set('favorite_fruit','apple');
var_dump($redis -> get('favorite_fruit')); // string apple // This second case: 最非字符串类型的 key 进行 set
$redis -> lPush('pats','dog');
$redis -> type('pats'); // list
$redis -> set('pats','cat'); // 不管类型为什么,都可以完成覆盖
var_dump($redis -> get('pats')); // string cat

2、SETNX

Redis Setnx(SET if Not eXists) 命令在指定的 key 不存在时,为 key 设置指定的值

语法:

redis 127.0.0.1:6379> SETNX KEY_NAME VALUE

返回值: 设置成功,返回 1 。 设置失败,返回 0 。

可用版本: >= 1.0.0

时间复杂度:O(1)

具体实例:

<?php
$redis = new redis();
$redis -> connect('127.0.0.1',6379);
$redis -> flushAll(); $redis -> setnx('job','programmer');
$redis -> setnx('job','code-farmer');
var_dump($redis -> get('job')); // string programmer ,没有被覆盖

3、SETEX

Redis Setex 命令为指定的 key 设置值及其过期时间。如果 key 已经存在, SETEX 命令将会替换旧的值。

语法:

redis 127.0.0.1:6379> SETEX KEY_NAME TIMEOUT VALUE

该命令类似于一下 2 个命令:

$redis -> set('key','value');       // 设置值
$redis -> expire('key','seconds'); // 设置生存时间

不同之处在于,SETEX 是一个原子性操作,设置值和生存时间同时完成,该命令在redis用做缓存是非常有用。

返回值: 设置成功时返回OK。当seconds参数不合法时,返回一个错误。。

可用版本: >= 2.0.0

时间复杂度:O(1)

具体实例:

<?php
$redis = new redis();
$redis -> connect('127.0.0.1',6379);
$redis -> flushAll(); // This first case: key 不存在
$redis -> setex('mykey',20,'redis');
echo $redis -> get('mykey'); // redis
sleep(2);
var_dump($redis -> ttl('mykey')); // 18 // This second case: key 已存在,覆盖
$redis -> set('job','programmer');
$redis -> setex('job',10,'code-farmer');
echo $redis -> get('job'); // code
sleep(2);
var_dump($redis -> ttl('job')); // 8

4、SETRANGE

Redis Setrange 命令用指定的字符串覆盖给定 key 所储存的字符串值,覆盖的位置从偏移量 offset 开始。

语法:

redis 127.0.0.1:6379> SETRANGE KEY_NAME OFFSET VALUE

返回值: 被修改后的字符串长度。

可用版本: >= 2.2.0

时间复杂度:对小(small)的字符串,平摊复杂度O(1)。(关于什么字符串是”小”的,请参考APPEND命令)否则为O(M),M为value参数的长度。

具体实例:

<?php
$redis = new redis();
$redis -> connect('127.0.0.1',6379);
$redis -> flushAll(); // This first case: 对非空字符串进行 SETRANGE
$redis -> set('key1','Hello world');
$redis -> setRange('key1',6,'redis');
var_dump($redis -> get('key1')); // Hello redis // This second case: 对空字符串进行 SETRANGE
if(! $redis -> exists('fake_key')) {
$redis -> setRange('fake_key',5,'redis');
var_dump($redis -> get('fake_key')); // string '�����redis' (length=10) ,空白处被 � 填充了。
}

5、MSET

Redis Mset 命令用于同时设置一个或多个 key-value 对。

(1)当发现同名的key存在时,MSET会用新值覆盖旧值,如果你不希望覆盖同名key,请使用MSETNX命令。

(2)MSET是一个原子性(atomic)操作,所有给定key都在同一时间内被设置,某些给定key被更新而另一些给定key没有改变的情况,不可能发生。

语法:

redis 127.0.0.1:6379> MSET key1 value1 key2 value2 .. keyN valueN 

返回值: 总是返回OK(因为MSET不可能失败)

可用版本: >= 1.0.1

时间复杂度:O(N),为要设置的 key 数量。

具体实例:

<?php
$redis = new redis();
$redis -> connect('127.0.0.1',6379);
$redis -> flushAll(); // This first case: 没有旧值存在,同时设置多个值
$array_mset = array(
'year' => 2017,
'month' => 5,
'date' => 10,
'time' => '11:04'
);
$redis -> mset($array_mset);
var_dump($redis -> keys('*'));
// array (size=4)
// 0 => string 'time' (length=4)
// 1 => string 'date' (length=4)
// 2 => string 'month' (length=5)
// 3 => string 'year' (length=4) // This second case: 有旧值存在,完成覆盖。
$redis -> set('favorite_fruit','apple');
$array_mset = array('favorite_fruit'=>'banana');
$redis -> mset($array_mset);
var_dump($redis -> get('favorite_fruit')); // banana

6、MSETNX

Redis Msetnx 命令用于所有给定 key 都不存在时,同时设置一个或多个 key-value 对。

(1)即使只有一个key已存在,MSETNX也会拒绝所有传入key的设置操作

(2)MSETNX是原子性的,所有字段要么全被设置,要么全不被设置。

语法:

redis 127.0.0.1:6379> MSETNX key1 value1 key2 value2 .. keyN valueN 

返回值: 当所有 key 都成功设置,返回 1 。 如果所有给定 key 都设置失败(至少有一个 key 已经存在),那么返回 0 

可用版本: >= 1.0.1

时间复杂度:O(N),为要设置的key的数量。

具体实例:

<?php
$redis = new redis();
$redis -> connect('127.0.0.1',6379);
$redis -> flushAll(); // This first case: 没有旧值存在,同时设置多个值
$array_mset = array(
'year' => 2017,
'month' => 5,
'date' => 10,
'time' => '14:59'
);
$redis -> msetnx($array_mset);
var_dump($redis -> keys('*'));
// array (size=4)
// 0 => string 'time' (length=4)
// 1 => string 'date' (length=4)
// 2 => string 'month' (length=5)
// 3 => string 'year' (length=4) // This second case: 有旧值存在,无法完成覆盖。
$redis -> set('favorite_fruit','apple');
$array_mset = array('favorite_fruit'=>'banana');
var_dump($redis -> msetnx($array_mset)); // boolean false
var_dump($redis -> get('favorite_fruit')); // apple , favorite_fruit的值并没有发生改变

7、APPEND

  Redis Append 命令用于为指定的 key 追加值

  (1)如果 key 已经存在并且是一个字符串, APPEND 命令将 value 追加到 key 原来的值的末尾。

  (2)如果 key 不存在, APPEND 就简单地将给定 key 设为 value ,就像执行 SET key value 一样。

语法:

redis 127.0.0.1:6379> APPEND KEY_NAME NEW_VALUE

返回值: 追加指定值之后, key 中字符串的长度。

可用版本: >= 2.0.0

时间复杂度:平摊复杂度O(1)

具体实例:

<?php
$redis = new redis();
$redis -> connect('127.0.0.1',6379);
$redis -> flushAll(); // This first case: 对已存在的字符串 append ,追加到字符串末尾
$redis -> set('favorite_fruit','cherry ');
$redis -> append('favorite_fruit','is very delicious');
var_dump($redis -> get('favorite_fruit')); // string 'cherry is very delicious' // This second case: 对不存在的字符串 append , 相当于 set 的功能
$redis -> del('job'); // 确保一个不存在的 key
$redis -> append('job','PHPer');
var_dump($redis -> get('job')); // string 'PHPer'

8、GET

  Redis Get 命令用于获取指定 key 的值。如果 key 不存在,返回 nil 。如果key 储存的值不是字符串类型,返回一个错误

语法:

redis 127.0.0.1:6379> GET KEY_NAME

返回值: 返回 key 的值,如果 key 不存在时,返回 nil。 如果 key 不是字符串类型,那么返回一个错误。

可用版本: >= 1.0.0

时间复杂度:O(1)

具体实例:

<?php
$redis = new redis();
$redis -> connect('127.0.0.1',6379);
$redis -> flushAll(); // This first case: key 存在且是字符串类型
$redis -> set('favorite_fruit','cherry');
var_dump($redis -> get('favorite_fruit')); // string 'cherry' // This second case: key 不存在
$redis -> del('fake_key'); // 确保一个不存在的 key
var_dump($redis -> get('fake_key')); // boolean false // This third case: key 不在但不是字符串类型
$redis -> lPush('job','programmer'); // list 类型
var_dump($redis -> get('job')); // boolean false

9、MGET

  Redis Mget 命令返回所有(一个或多个)给定 key 的值。 如果给定的 key 里面,有某个 key 不存在,那么这个 key 返回特殊值 nil 。

语法:

redis 127.0.0.1:6379> MGET KEY1 KEY2 .. KEYN

返回值:一个包含所有给定 key 的值的列表。

可用版本: >= 1.0.0

时间复杂度:O(1)

具体实例:

<?php
$redis = new redis();
$redis -> connect('127.0.0.1',6379);
$redis -> flushAll(); // This first case: 给定的 key 都存在
$array_mset = array(
'year' => 2017,
'month' => 5,
'day' => 10,
'time' => '15:31'
);
$redis -> mset($array_mset);
$array_mget = array('year','month','day','time');
var_dump($redis -> mget($array_mget));
// array (size=4)
// 0 => string '2017' (length=4)
// 1 => string '5' (length=1)
// 2 => string '10' (length=2)
// 3 => string '15:31' (length=5) // This second case:给定的 key 中有 key 不存在的情况
$array_mget = array('year','month','fake_key');
var_dump($redis -> mget($array_mget));
// array (size=3)
// 0 => string '2017' (length=4)
// 1 => string '5' (length=1)
// 2 => boolean false

10、GETRANGE

  Redis Mget 命令返回所有(一个或多个)给定 key 的值。 如果给定的 key 里面,有某个 key 不存在,那么这个 key 返回特殊值 nil 

语法:

redis 127.0.0.1:6379> GETRANGE KEY_NAME start end

返回值:截取得到的子字符串。

可用版本: >= 2.4.0(在<=2.0的版本里,GETRANGE被叫作SUBSTR。)

时间复杂度:O(N),N为要返回的字符串的长度。(复杂度最终由返回值长度决定,但因为从已有字符串中建立子字符串的操作非常廉价(cheap),所以对于长度不大的字符串,该操作的复杂度也可看作O(1))。

具体实例:

<?php
$redis = new redis();
$redis -> connect('127.0.0.1',6379);
$redis -> flushAll(); $redis -> set('mykey','hello world');
echo $redis -> getRange('mykey',0,-1) . '</br>'; // 从开头到结束, hello world
echo $redis -> getRange('mykey',0,4) . '</br>'; // 从 0 到 4 , hello
echo $redis -> getRange('mykey',-5,-1) . '</br>'; // 从 -5 到 -1 , world
var_dump($redis -> getRange('mykey',-1,-5)). '</br> '; // 从 -1 到 -5 , "" ,不支持回绕操作
echo $redis -> getRange('mykey',0,100). '</br> '; // 从 0 到 100 , hello world ,若范围超过了字符串的长度,超过部分自动被忽略

11、GETSET

  Redis Getset 命令用于设置指定 key 的值,并返回 key 旧的值。

语法:

redis 127.0.0.1:6379> GETSET KEY_NAME VALUE

返回值:返回给定 key 的旧值。

(1)当 key 没有旧值时,即 key 不存在时,返回 nil 。

(3)当 key 存在但不是字符串类型时,返回一个错误。

可用版本: >= 1.0.0

时间复杂度:O(1)

具体实例:

<?php
$redis = new redis();
$redis -> connect('127.0.0.1',6379);
$redis -> flushAll(); // This first case: key 值存在且为字符串类型
$redis -> set('favorite_fruit','cherry');
var_dump($redis -> getSet('favorite_fruit','pineapple')); // cherry // This second case: key 值存在但不为字符串类型
$redis -> lPush('job','programmer');
var_dump($redis -> getSet('job','code-farmer')); // boolean false // This third case: key 值不存在
$redis -> del('fake_key');
var_dump($redis -> getSet('fake_key','not-exists')); // boolean false

12、STRLEN

  Redis Strlen 命令用于获取指定 key 所储存的字符串值的长度。当 key 储存的不是字符串值时,返回一个错误。

语法:

redis 127.0.0.1:6379> STRLEN KEY_NAME

返回值:字符串值的长度。 当 key 不存在时,返回 0。

可用版本: >= 2.2.0

时间复杂度:O(1)

具体实例:

<?php
$redis = new redis();
$redis -> connect('127.0.0.1',6379);
$redis -> flushAll(); // This first case: key 值存在
$redis -> set('favorite_fruit','cherry');
var_dump($redis -> strlen('favorite_fruit')); // int 6 // This second case: key 值不存在
$redis -> del('fake_key');
var_dump($redis -> strlen('fake_key')); // int 0

13、INCR

  Redis Incr 命令将 key 中储存的数字值增一。

  (1)如果 key 不存在,那么 key 的值会先被初始化为 0 ,然后再执行 INCR 操作。

  (2)如果值包含错误的类型,或字符串类型的值不能表示为数字,那么返回一个错误。

  (3)本操作的值限制在 64 位(bit)有符号数字表示之内。

语法:

redis 127.0.0.1:6379> INCR KEY_NAME 

返回值:执行 INCR 命令之后 key 的值。

可用版本:>= 1.0.0

时间复杂度:O(1)

具体实例:

<?php
$redis = new redis();
$redis -> connect('127.0.0.1',6379);
$redis -> flushAll(); // This first case: key 值存在且为数字
$redis -> set('number',10);
var_dump($redis -> incr('number')); // int 11
var_dump($redis -> get('number')); // string '11' , 其值在 redis 中是以字符串的形式保存的 // This second case: key 值不存在
$redis -> del('fake_key');
var_dump($redis -> incr('fake_key')); // int 1 // This third case: key 值存但不为数字
$redis -> set('favorite_fruit','cherry');
var_dump($redis -> incr('favorite_fruit')); // boolean false // This fourth case: key 值存但为其它的类型
$redis -> lPush('job',20);
var_dump($redis -> incr('job')); // boolean false

14、INCRBY

  Redis Incrby 命令将 key 中储存的数字加上指定的增量值。

  (1)如果 key 不存在,那么 key 的值会先被初始化为 0 ,然后再执行 INCRBY 命令。

  (2)如果值包含错误的类型,或字符串类型的值不能表示为数字,那么返回一个错误。

  (3)本操作的值限制在 64 位(bit)有符号数字表示之内。

语法:

redis 127.0.0.1:6379> INCRBY KEY_NAME INCR_AMOUNT

返回值:加上指定的增量值之后, key 的值。

可用版本:>= 1.0.0

时间复杂度:O(1)

具体实例:

<?php
$redis = new redis();
$redis -> connect('127.0.0.1',6379);
$redis -> flushAll(); // This first case: key 值存在且为数字
$redis -> set('number',10);
var_dump($redis -> incrBy('number',5)); // int 15
var_dump($redis -> get('number')); // string '15' , 其值在 redis 中是以字符串的形式保存的 // This second case: key 值不存在
$redis -> del('fake_key');
var_dump($redis -> incrBy('fake_key','5')); // int 5 // This third case: key 值存但不为数字
$redis -> set('favorite_fruit','cherry');
var_dump($redis -> incrBy('favorite_fruit',5)); // boolean false // This fourth case: key 值存但为其它的类型
$redis -> lPush('job',20);
var_dump($redis -> incrBy('job',5)); // boolean false

15、INCRBYFLOAT

  Redis Incrbyfloat 命令为 key 中所储存的值加上指定的浮点数增量值。

语法:

redis 127.0.0.1:6379> INCRBYFLOAT KEY_NAME INCR_AMOUNT

返回值:执行命令之后 key 的值。

可用版本:>= 2.6.0

具体实例:

<?php
$redis = new redis();
$redis -> connect('127.0.0.1',6379);
$redis -> flushAll(); // This first case: key 值存在且为数字
$redis -> set('number',10.2);
var_dump($redis -> incrByFloat('number',0.3)); // float 10.5
var_dump($redis -> get('number')); // string '10.5' , 其值在 redis 中是以字符串的形式保存的 // This second case: key 值不存在
$redis -> del('fake_key');
var_dump($redis -> incrByFloat('fake_key',0.3)); // float 0.3 // This third case: key 值存但不为数字
$redis -> set('favorite_fruit','cherry');
var_dump($redis -> incrByFloat('favorite_fruit',0.3)); // boolean false // This fourth case: key 值存但为其它的类型
$redis -> lPush('job',20.2);
var_dump($redis -> decrBy('job',0.3)); // boolean false

16、DECR

  Redis Decr 命令将 key 中储存的数字值减一。

  (1)如果 key 不存在,那么 key 的值会先被初始化为 0 ,然后再执行 DECR 操作。

  (2)如果值包含错误的类型,或字符串类型的值不能表示为数字,那么返回一个错误。

  (3)本操作的值限制在 64 位(bit)有符号数字表示之内。

语法:

redis 127.0.0.1:6379> DECR KEY_NAME 

返回值:执行命令之后 key 的值。。

可用版本:>= 1.0.0

时间复杂度:O(1)

具体实例:

<?php
$redis = new redis();
$redis -> connect('127.0.0.1',6379);
$redis -> flushAll(); // This first case: key 值存在且为数字
$redis -> set('number',10);
var_dump($redis -> decr('number')); // int 9
var_dump($redis -> get('number')); // string '9' , 其值在 redis 中是以字符串的形式保存的 // This second case: key 值不存在
$redis -> del('fake_key');
var_dump($redis -> decr('fake_key')); // int -1 // This third case: key 值存但不为数字
$redis -> set('favorite_fruit','cherry');
var_dump($redis -> decr('favorite_fruit')); // boolean false // This fourth case: key 值存但为其它的类型
$redis -> lPush('job',20);
var_dump($redis -> decr('job')); // boolean false

17、DECRBY

  Redis Decrby 命令将 key 所储存的值减去指定的减量值。

  (1)如果 key 不存在,那么 key 的值会先被初始化为 0 ,然后再执行 DECRBY 操作。

  (2)如果值包含错误的类型,或字符串类型的值不能表示为数字,那么返回一个错误。

  (3)本操作的值限制在 64 位(bit)有符号数字表示之内。

语法:

redis 127.0.0.1:6379> DECRBY KEY_NAME DECREMENT_AMOUNT

返回值:减去指定减量值之后, key 的值。

可用版本:>= 1.0.0

时间复杂度:O(1)

具体实例:

<?php
$redis = new redis();
$redis -> connect('127.0.0.1',6379);
$redis -> flushAll(); // This first case: key 值存在且为数字
$redis -> set('number',10);
var_dump($redis -> decrBy('number',5)); // int 5
var_dump($redis -> get('number')); // string '5' , 其值在 redis 中是以字符串的形式保存的 // This second case: key 值不存在
$redis -> del('fake_key');
var_dump($redis -> decrBy('fake_key',5)); // int -5 // This third case: key 值存但不为数字
$redis -> set('favorite_fruit','cherry');
var_dump($redis -> decrBy('favorite_fruit',5)); // boolean false // This fourth case: key 值存但为其它的类型
$redis -> lPush('job',20);
var_dump($redis -> decrBy('job',5)); // boolean false

18、SETBIT

  Redis Setbit 命令用于对 key 所储存的字符串值,设置或清除指定偏移量上的位(bit)。

  (1)位的设置或清除取决于value参数,可以是0也可以是1

  (2)当key不存在时,自动生成一个新的字符串值。

  (3)字符串会增长(grown)以确保它可以将value保存在指定的偏移量上。当字符串值增长时,空白位置以0填充。

  (4)offset参数必须大于或等于0,小于2^32(bit映射被限制在512MB内)。

语法:

redis 127.0.0.1:6379> Setbit KEY_NAME OFFSET

返回值:指定偏移量原来储存的位。

可用版本:>= 2.2.0

时间复杂度:O(1)

具体实例:

<?php
$redis = new redis();
$redis -> connect('127.0.0.1',6379);
$redis -> flushAll(); $bit = 67;
echo decbin($bit); // 1000011 , 转为二进制数
var_dump($redis ->setBit('bit_val',0,0)); // int 0 ,原来的空位都为 0
var_dump($redis ->setBit('bit_val',1,1)); // int 0
var_dump($redis ->setBit('bit_val',2,0)); // int 0
var_dump($redis ->setBit('bit_val',3,0)); // int 0
var_dump($redis ->setBit('bit_val',4,0)); // int 0
var_dump($redis ->setBit('bit_val',5,0)); // int 0
var_dump($redis ->setBit('bit_val',6,1)); // int 0
var_dump($redis ->setBit('bit_val',7,1)); // int 0 var_dump($redis -> get('bit_val')); // string 大写字母 'C',其 ASCII 值为67 ,二进制为 0100 0011
var_dump($redis ->getBit('bit_val','6')); // int 1
var_dump($redis ->getBit('bit_val','8')); // int 0 , offset 比字符串的长度大,返回0
var_dump($redis ->getBit('bit_not_exist','1')); // int 0 , key 不存在,返回0 var_dump($redis ->setBit('bit_val',5,1)); // int 0 ,将原来的第 5 位改为 1
var_dump($redis ->setBit('bit_val',6,0)); // int 1 ,由于第 6 位被设置过为 1 ,现在返回原来位的值 1 ,但是第 6 位现在的值已经为 0 了 var_dump($redis -> get('bit_val')); // string 大写字母 'E',其 ASCII 值为69 ,二进制为 0100 0101

19、GETBIT

  Redis Getbit 命令用于对 key 所储存的字符串值,获取指定偏移量上的位(bit)。

语法:

redis 127.0.0.1:6379> GETBIT KEY_NAME OFFSET

返回值:字符串值指定偏移量上的位(bit)。当偏移量 OFFSET 比字符串值的长度大,或者 key 不存在时,返回 0。

可用版本:>= 2.2.0

时间复杂度:O(1)

具体实例:

参见 setbit

如有转载,请注明出处:http://www.cnblogs.com/chrdai/p/6832373.html

redis 在 php 中的应用(string篇)的更多相关文章

  1. redis 在 php 中的应用(List篇)

    本文为我阅读了 redis参考手册 之后编写,注意 php_redis 和 redis-cli 的区别(主要是返回值类型和参数用法) 目录: List(列表) LPUSH LPUSHX RPUSH R ...

  2. redis 在 php 中的应用(Set篇)

    本文为我阅读了 redis参考手册 之后编写,注意 php_redis 和 redis-cli 的区别(主要是返回值类型和参数用法) Redis的 Set 是 string 类型的无序集合.集合成员是 ...

  3. redis 五大数据类型之string篇

    一: 1:string(字符串) string是redis最基本的类型,你可以理解成与Memcached一模一样的类型,一个key对应一个value. string类型是二进制安全的.意思是redis ...

  4. .NET 环境中使用RabbitMQ RabbitMQ与Redis队列对比 RabbitMQ入门与使用篇

    .NET 环境中使用RabbitMQ   在企业应用系统领域,会面对不同系统之间的通信.集成与整合,尤其当面临异构系统时,这种分布式的调用与通信变得越发重要.其次,系统中一般会有很多对实时性要求不高的 ...

  5. redis 在 php 中的应用(Sorted-set篇)

    本文为我阅读了 redis参考手册 之后编写,注意 php_redis 和 redis-cli 的区别(主要是返回值类型和参数用法) Redis 有序集合和集合一样也是string类型元素的集合,且不 ...

  6. redis 在 php 中的应用(key篇)

    本文为我阅读了 redis参考手册 之后结合 博友的博客 编写,注意 php_redis 和 redis-cli 的区别(主要是返回值类型和参数用法) 目录: KEY(键) DEL           ...

  7. redis 在 php 中的应用(Server[ 服务器] 篇)

    本文为我阅读了 redis参考手册 之后编写,注意 php_redis 和 redis-cli 的区别(主要是返回值类型和参数用法) 目录: Server(服务器) BGREWRITEAOF BGSA ...

  8. redis 在 php 中的应用(Connection [ 连接] 篇)

    本文为我阅读了 redis参考手册 之后编写,注意 php_redis 和 redis-cli 的区别(主要是返回值类型和参数用法) 目录: Connection(连接) AUTH ECHO PING ...

  9. Redis从入门到精通:中级篇

    原文链接:http://www.cnblogs.com/xrq730/p/8944539.html,转载请注明出处,谢谢 本文目录 上一篇文章以认识Redis为主,写了Redis系列的第一篇,现在开启 ...

随机推荐

  1. Python基础之语句1

    一.行定义(两类): 1.物理行:程序员编写代码的行. 2.逻辑行:python解释器需要执行的指令. 建议:一个逻辑行在一个物理行上,若一个物理行使用多个逻辑行,需要使用分号隔开:如果逻辑行过长,可 ...

  2. 修改MyEclipse字体大小及颜色

    windows-->prefereces->General-->Appearance-->Colors and Fonts,在右边找到要修改的字体或背景,双击点Edit修改即可 ...

  3. Lecture5_1&5_2.随机变量的数字特征(数学期望、方差、协方差)

    一.数学期望 1.离散型随机变量的数学期望 设X为离散随机变量,其概率分布为:P(X=xk)=pk 若无穷级数$\sum_{k=1}^{+\infty}x_kp_k$绝对收敛 (即满足$\sum_{k ...

  4. html中不常用但必须知道的标签

    1.<b>加粗</b> 为天地立心,为生民立命,为往圣继绝学,为万世开太平 2.<s>删除线</s> 为天地立心,为生民立命,为往圣继绝学,为万世开太平 ...

  5. ldd可执行程序时返回not a dynamic executable

    原因:32位程序放在64位机器上或64位程序放在32位程序上了 解决方法:如果是32位程序放在64位系统上则安装yum -y install libstdc++.i686,64位则是yum -y in ...

  6. NOIP 2017 解题报告

    ---恢复内容开始--- NOIP 2017 的题真的很难啊,怪不得当年我这个萌新爆零了(当然现在也是萌新)越学越觉得自己什么都不会. 想要成为强者要把这些好题都弄懂弄透 至少现在6道题我都比较陌生 ...

  7. 一、大体认识jspxcms

    声明:jspxcms的license写明,允许将jspxcms用于商业和非商业用途.此处只是作为研究.分享使用心德,并不涉及商用. 使用版本:jspxcms  9.5.0 一.下载源码,并部署到ecl ...

  8. Spark入门到精通--(第八节)环境搭建(Hadoop搭建)

    上一节把Centos的集群免密码ssh登陆搭建完成,这一节主要讲一下Hadoop的环境搭建. Hadoop下载安装 下载官网的Hadoop 2.4.1的软件包.http://hadoop.apache ...

  9. JAVA学习笔记 (一、入门及前期准备)

    博主本来只是会一点python,但是换了新公司这边用的java,边学习边总结吧,共勉之. 一.认识 java (1)java分为三类 JavaSE 基础核心 JaveEE web方向(企业版) Jav ...

  10. btcpool之总架构

    一.架构图 二.模块划分 整个btcpool分成GbtMaker.BlockMaker.JobMaker.StratumServer.PoolWatcher.statshttpd.sharelogge ...