0

好的,这是他写的缓存库的链接:https ://github.com/philsturgeon/codeigniter-cache

无论如何,他的文档绝对是……含糊不清,根本没有帮助。我知道这是不言自明的......在一定程度上。

$this->cache->model('blog_m', 'getPosts', array($category_id, 'live'), 120); // keep for 2 minutes 

第三个参数是什么?这是创建缓存的原因还是创建缓存文件的原因:

$this->cache->write($data, 'cached-name');

如果是这样, $data 究竟应该持有什么价值?整体查询orrr...?? 如果有人可以解释如何创建缓存文件..基本上我想缓存选择一堆新闻帖子的查询..每次创建新帖子时,删除该缓存并重新缓存它显示新的新闻发布..

4

1 回答 1

0

文档似乎相当清楚。无论如何,我会尝试用更好的术语来解释它:

// cached model call
$this->cache->model('blog_m', 'getPosts', array($category_id, 'live'), 120); // keep for 2 minutes

这会调用getPosts模型上的方法blog_m并将结果缓存 120 秒。如果您在接下来的 2 分钟内再次进行相同的调用,它将返回缓存的结果,否则它将从数据库中获取数据并更新缓存。这对于您将经常调用的模型上的方法很有用。

如果要手动添加和从缓存中获取数据,则使用:

// cached array or object
$this->cache->write($data, 'cached-name');
$data = $this->cache->get('cached-name');

$data将保存您想要缓存的任何内容。例如,如果您想缓存用户的电子邮件,以下是缓存和获取它的方式

$email = 'foobar@example.com';
$this->cache->write($email, 'user-email');
// to fetch
$user_email = $this->cache->get('user-email');
于 2013-02-28T00:47:29.280 回答