一:使用cache运行Redis

  • 配置config文件下的cache.php文件,在stores中添加Redis
    // 缓存连接方式配置
    'stores'  => [
        'file' => [
        // 缩短文本此处省略
        ],
        // 更多的缓存连接        // 看这里新增Redis缓存
        'redis'   =>  [
            // 驱动方式
            'type' => 'redis',
            // 服务器地址
            'host'     => '127.0.0.1',
            // redis密码:如果没有设置就为空
            'password' => '123456',
            // 服务器端口
            'port'     => '6379'
        ],
    ],
  • 使用cache运行的连接方式
// 引入类
use think\facade\Cache;public function index()
    {
        // 连接redis
        $redis = Cache::store('redis');
        if ($redis) {
            echo 'redis连接成功!';
            // 基础存取,更多命令参考下一步
            $redis->set('name','admin');
            print_r($redis->get('name'));
        } else {
            echo 'redis连接失败!';
        }
    }

二:连接Redis后使用基础的存取命令(字符串 || 队列列表 || 散列哈希)

            // 查看连接是否正常
            $redis->ping();            /*************** 字符串类型 */            // 设置缓存:set('key','value',(可选参数)EX)(EX:过期时间秒)(set同一个key时,新值覆盖旧值)
            $redis->set('name', 'admin');
            // 获取缓存:get('key')
            $redis->get('name');
            // 获取所有key
            $redis->keys('*');            /*************** 队列列表类型 */            // 将一个或多个值插入到列表头部:lpush(key(表名),value,value,value) (多个值用逗号隔开)
            头部:$redis->lpush('lists', 'Redis', 'PHP', 'Java', 'Go');
            // 将一个或多个值插入到列表尾部:rpush(key,value,value,value) (多个值用逗号隔开)
            尾部:$redis->rpush('lists', 'Js');            // 获取存储的列表数据:lrange('key',0)
            /* 0,-1:返回所有值
                 -1:表示最后一个元素
                 0: 表示第0个元素
                 1: 表示第1个元素*/
            $redis->lrange('lists', 0, -1);            // 移除并返回列表第1个元素:lpop(key)
            $redis->lpop('lists');
            // 移除并返回列表最后一个元素:rpop(key)
            $redis->rpop('lists');            // 根据 count 的值,移除列表中与参数 value 相等的元素:lrem(key, value, count)
            // count > 0:从表头开始向表尾搜索,移除与 value 相等的值,数量为 count
            // count < 0:从表尾开始向表头搜索,移除与 value 相等的值,数量为 count
            // count = 0:移除表中所有与 value 相等的值
            $redis->lrem('lists', 'Redis', 1);            /*************** 散列类型 */            // 为哈希表字段赋值:hset(key(表名),field,value)
            $redis->hset('table', 'baidu', 'www.baidu.com');
            // 获取哈希表中指定的字段值:hget(key,field)
            $redis->hget('table', 'baidu');
            // 获取哈希表中所有的健:hkeys(key)
            $redis->hkeys('table');
            // 获取哈希表中所有的键值对:hgetall(key)
            $redis->hgetall('table');
            // 获取哈希表中所有的值:hvals(key)
            $redis->hvals('table');
            // 删除哈希表中指定的值:hdel(key,field)
            $redis->hdel('table','baidu');
            // 返回哈希表中key的数量:hlen(key)
            $redis->hlen('table');

三:Redis缓存数据格式

字符串:

队列列表:

哈希:

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论

微信小程序

微信扫一扫体验

立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部