代码点火器缓存返回始终为空


codeigniter cache returns always empty

我尝试使用Codeigniter缓存系统,将一些远程xml文件缓存到"文件缓存"中。

当我请求 xmls 时,每个想法看起来都很棒,但代码点火器不缓存文件,而是返回一个空缓存,缓存文件仅包含以下数据:

a:3:{s:4:"time";i:1379515910;s:3:"ttl";i:120;s:4:"data";b:1;}

我正在使用下面的代码来缓存 xml:

$this->load->driver('cache');
$this->cache->file->save('first', $data, 120);

[更新]

现在我可以保存缓存,但我无法挽救保存的数据。当我运行下面的命令时,缓存返回 false

$this->cache->get('show');

我哪里出错了?

谢谢。

您已使用

$this->cache->file->save('first', $data, 120);

然后使用正确的key获取它,它应该是first

$this->cache->get('first');

此外,要获取有关您可以使用cache的信息

var_dump($this->cache->cache_info());

或者您可以使用

var_dump($this->cache->get_metadata('first'));

这对于调试很有用。get 方法接受cache_item_id作为保存时使用的参数

get(id['string'])

查看文档。

问题已解决,当我调用该方法以获取当前缓存时,我需要传递使用的驱动程序,例如:

$this->cache->file->get('home');
OR
$this->cache->memcached->get('home');

谢谢。

只需在"应用程序"目录中创建文件夹"cache"。它对我有用

我遇到了同样的问题,但就我而言,这是存储问题。

我的硬盘已满 100%(由于一些错误日志)。

也许这些信息会对某人有所帮助。

我在这里偶然发现了类似的问题。我的问题是没有安装APC缓存。因此,如果其他人正在使用APC并遇到此问题。尝试安装 APC。

ubuntu 1604 上的 PHP 7.1 示例:

sudo apt-get update
sudo apt-get install php7.1-apcu
sudo service php7.1-fpm restart

我也遇到了同样的问题......

$this->load->driver('cache', array('adapter' => 'apc', 'backup' => 'file'));
$this->cache->file->save('first', $data, 120);

我修改了这两行..