5

我是codeigniter的新手。我想使用基于文件的缓存。我不知道我是否理解正确。
1.在父控制器中声明以下内容-- $this->load->driver('cache');
2.$this->cache->file->save('foo', 'bar', 10);用于保存文件但我不知道这个函数的参数是什么以及如何实现所有这些以便可以完成缓存。
请帮忙

4

1 回答 1

7

http://codeigniter.com/user_guide/libraries/caching.html#example_usage
手册有它 - 但它在示例中有点隐藏:

if ( ! $foo = $this->cache->get('foo'))
{
     echo 'Saving to the cache!<br />';
     $foo = 'foobarbaz!';

     // Save into the cache for 5 minutes
     $this->cache->save('foo', $foo, 300);
}

'foo' -> 要缓存的变量的名称
$foo -> 要缓存的变量。它可以是任何
300 -> 以秒为单位的时间 (60*5) - 设置为 0 表示没有过期

因此,如果 $foo 为空,则重新创建缓存文件,否则您可以使用 $foo 加载数据。

进一步说明: http ://codeigniter.com/user_guide/general/caching.html

一个更灵活的替代方案可能是这个 sparks 库: http: //getsparks.org/packages/cache/show
我使用它,它非常适合我对基于文件的缓存的需求。

于 2012-09-01T21:41:29.460 回答