TP6如何使用Redis缓存(配置+基础命令)

文章详细介绍了如何在配置文件中设置Redis缓存,包括添加Redis配置到stores,设置连接参数如host、port和password。接着展示了如何通过thinkfacadeCache连接Redis并执行基本的存取操作,如设置和获取字符串、列表和哈希数据类型的数据。此外,还列举了Redis的ping命令以及字符串、列表和哈希类型的常用操作命令。
摘要由CSDN通过智能技术生成

一:使用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
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
TP6ThinkPHP 6)是一个基于PHP的开源框架,它提供了丰富的功能和工具来简化Web应用程序的开发过程。在TP6使用Redis可以提高应用程序的性能和可扩展性。下面是一个演示如何在TP6使用Redis的例子: 首先,确保你已经安装了RedisPHPRedis扩展。然后,在TP6配置文件`config/cache.php`中配置Redis连接信息,例如: ```php return [ // 默认缓存驱动 'default' => env('cache.driver', 'redis'), // 缓存连接方式配置 'stores' => [ // Redis缓存连接配置 'redis' => [ // 驱动方式 'type' => 'redis', // 服务器地址 'host' => '127.0.0.1', // 端口号 'port' => 6379, // 密码 'password' => '', // 缓存前缀 'prefix' => '', // 缓存有效期 0表示永久缓存 'expire' => 0, ], ], ]; ``` 接下来,在控制器中使用Redis进行缓存操作。例如,我们可以在一个控制器方法中设置和获取缓存: ```php <?php namespace app\controller; use think\facade\Cache; class Index { public function index() { // 设置缓存 Cache::store('redis')->set('name', 'John Doe'); // 获取缓存 $name = Cache::store('redis')->get('name'); return 'Hello, ' . $name; } } ``` 在上面的例子中,我们使用`Cache::store('redis')`来指定使用Redis作为缓存驱动。然后,我们可以使用`set`方法设置缓存使用`get`方法获取缓存。 请注意,以上只是一个简单的示例,你可以根据自己的需求在TP6使用更多的Redis功能和方法。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值