我正在使用codigniter redis库在codeigniter框架内使用redis。我把Redis.php(库文件)放在了application/library中,把reds.php(配置文件)放进了application/config 中
这是我的代码
class Test extends Controller {
function __construct()
{
log_msg('info', "loading redis");
$this->load->library('redis', array('connection_group' => 'default'), 'redis_default');
}
function index()
{
$this->redis->command('PING');
}
当我从浏览器调用测试控制器时,它会给我错误
Message: Undefined property: Test::$redis
Filename: controllers/test.php
但它在日志文件中显示了适当的日志,一个如上所示,一个我放在Redis.php函数_construct中,它告诉我连接成功
if ( ! $this->_connection)
{
show_error('Could not connect to Redis at ' . $config['host'] . ':' . $config['port']);
}
else
{
log_msg('info', "connection successful");
}
只需仔细检查:您在这里发布的代码,是否来自控制器?如果是这样,请记住从CI_Controller扩展,而不仅仅是从Controller扩展。
此外,在_构造()中,您缺少父级::_construct()。
从您的日志条目来看,它显示它正在_构造()上进行连接,但这基本上是它的终点。很可能是由于缺少父级::_construct()引起的。希望这能帮助