Yii2 redis 使用


首先要安裝一下redis的擴展

composer require yiisoft/yii2-redis

在配置文件中添加redis配置

'components' => [
....
'redis'  => [
            'class'    => 'yii\redis\Connection',
            'hostname' => yourname,
            'password' => yourPassword,
            'port'     =>6379,//默認的端口  配置其他端口在這里改
            'database' => 0,//使用的第幾個DB
        ],
'redis_1'  => [
            'class'    => 'yii\redis\Connection',
            'hostname' => yourname,
            'password' => yourPassword,
            'port'     =>6379,//默認的端口  配置其他端口在這里改
            'database' => 1,//使用的第幾個DB
        ],
....
]

使用方法:

//實例化redis
$redis = Yii::$app->redis_1;//使用哪一個redis  如果使用了redis集群  則不配置redis的其他DB

String:

// 設置一個字符串的值
$redis->set('key', 111);
//獲取一個字符串的值
echo $redis->get('key'); // 111
// 重復set
$redis->set('key', 222);//222

List:

//列表
//存儲數據到列表中
$redis->lpush('list', 'js');
$redis->lpush('list', 'python');
$redis->lpush('list', 'php');

//獲取列表中所有的值
$redis->lrange('list', 0, -1);

//從右側加入一個
$redis->rpush('list', 'mysql');
$redis->lrange('list', 0, -1);

//從左側彈出一個
$redis->lpop('list');
$redis->lrange('list', 0, -1);

//從右側彈出一個
$redis->rpop('list');
$redis->lrange('list', 0, -1);

HASH

//給hash表中某個key設置value
//如果沒有則設置成功,返回1,如果存在會替換原有的值,返回0,失敗返回0
  $redis->hset('hash', 'key', 'key');
 //獲取hash中某個key的值
  $redis->hget('hash', 'key');
 //獲取hash中所有的keys
  $redis->hkeys('hash');
 //獲取hash中所有的值 順序是隨機的
  $redis->hvals('hash');
 //獲取一個hash中所有的key和value 順序是隨機的
  $redis->hgetall('hash');
 //獲取hash中key的數量
  $redis->hlen('hash');
 //刪除hash中一個key 如果表不存在或key不存在則返回false
  $redis->hdel('hash', 'php');

Set:無序集合

//在集合key中添加value
$redis->sadd('key','value');
//在集合key中移除value
$redis->srem('key','value');

 

Sorted Set:有序集合

//在集合key中添加value
$redis->zadd('key','1','value');
//在集合key中移除value
$redis->zrem('key','1','value');

 

注意:集合的值都是會去重的 list不會

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM