config已经配置好了,现在只会在每个method中这么使用,
// 连接本地的 Redis 服务
$redis = new Redis();
$redis->connect('127.0.0.1', 6379);
$access_token=$redis->get('oauth_access_token');这样每个方法都要new一次不太好,因为有时要调用好几个function,
看手册是这么用的。但是报错了.
$this->load->driver('cache');
var_dump($this->cache->redis->get("ci_session:932dd5eb64ccbf43ee76bfe378a2710666dd07f9"));没有静态的方法Redis::get()这么使用的吗?
问下大家是怎么用的?
config已经配置好了,现在只会在每个method中这么使用,
// 连接本地的 Redis 服务
$redis = new Redis();
$redis->connect('127.0.0.1', 6379);
$access_token=$redis->get('oauth_access_token');这样每个方法都要new一次不太好,因为有时要调用好几个function,
看手册是这么用的。但是报错了.
$this->load->driver('cache');
var_dump($this->cache->redis->get("ci_session:932dd5eb64ccbf43ee76bfe378a2710666dd07f9"));没有静态的方法Redis::get()这么使用的吗?
问下大家是怎么用的?
//配置了多个redis的情况
$this->config->load('redis', TRUE, TRUE);
$redis_conf = $this->config->item('redis');
$this->load->driver('cache', array('adapter' => 'redis', 'config' => $redis_conf['redis_config_name']), 'redis_name');
//只配置了默认redis
$this->load->driver('cache', array('adapter' => 'redis'), 'redis_name');
//使用
$this->redis_name->info();
我刚才翻了一下CI 3.0的system,其实CI是把CI放到了cache中来算的,并没有放到system的database中,看来是并没有把redis当数据库看待,仅仅是当作缓存。
至于你提出的地一个问题:
每次都要new一遍,这个我建议你自己写一个redis library,然后单例化,这样就不用每次new了;只有自己写,才能达到自己想要的效果。或者二次开发CI的database core,当然我不建议你这么做。
然后是你的第二个问题,我看了一下ci system的cache类,最后有一个叫做is_supported的方法,我建议你测试一下你的环境中redis扩展是否加载OK。
祝一切顺利。
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
C++高性能并发应用_C++如何开发性能关键应用
Java AI集成Deep Java Library_Java怎么集成AI模型部署
Golang后端API开发_Golang如何高效开发后端和API
Python异步并发改进_Python异步编程有哪些新改进
C++系统编程内存管理_C++系统编程怎么与Rust竞争内存安全
Java GraalVM原生镜像构建_Java怎么用GraalVM构建高效原生镜像
Python FastAPI异步API开发_Python怎么用FastAPI构建异步API
C++现代C++20/23/26特性_现代C++有哪些新标准特性如modules和coroutines
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号