POSTS
PHP extension Redis 安裝使用
PHP extension Redis 安裝使用
安裝 PHP extension for Redis 使PHP可以與Redis運作.
安裝
$ cd /tmp
$ git clone git://github.com/nicolasff/phpredis.git
$ cd /tmp/phpredis
$ phpize
$ ./configure
$ make
$ make install clean
#編輯 php.ini加入
extension=redis.so
當 SESSION storge使用
如果要將SESSION 存入redis 只需要在php.ini做以下設定:
session.save_handler = redis
session.save_path = "tcp://host1:6379?weight=1, tcp://host2:6379?weight=2&timeout=2.5, tcp://host3:6379?weight=2"
weight: 權重依照上方設定範例 host1:為5/1 host1:為5/2 host1:為5/2
timeout:喻时以秒為單位 最大86400.
persistent:持久連線.預設為開啟.
prefix:前置字.儲存於Redis的前置字 預設PHPREDIS_SESSION:
auth:認證.預設無
一般存取
connect('127.0.0.1', 6379);//一般連線
$redis->pconnect('127.0.0.1', 6379);//持久連線
$redis->get('key');//取得
$redis->set('key', 'value');//存入
$redis->setex('key', 3600, 'value');//存入並且有一小時存活時間
$redis->setnx('key', 'value');//只有在無此key時才存入
$redis->delete('key1', 'key2'); //刪除
$redis->delete(array('key3', 'key4')); //刪除
$ret = $redis->multi() //多筆執行
->set('key1', 'val1')
->get('key1')
->set('key2', 'val2')
->get('key2')
->exec();
//監控key值是否改變.
$redis->watch('x');
/* long code here during the execution of which other clients could well modify `x` */
$ret = $redis->multi()
->incr('x')
->exec();
/*
$ret = FALSE if x has been modified between the call to WATCH and the call to EXEC.
*/
//key值做遞增
$redis->incr('key1'); /* 2 */
$redis->incr('key1'); /* 3 */
$redis->incr('key1'); /* 4 */
$redis->incrBy('key1', 10); /* 14 */
//key值做遞減
$redis->decr('key1'); /* -2 */
$redis->decr('key1'); /* -3 */
$redis->decrBy('key1', 10); /* -13 */
//取多個key值
$redis->mGet(array('key1', 'key2', 'key3'));
大致上就這樣感覺很讚唷.