对于数据不需要经常更新的页面,我们经常会使用生成HTML来加快用户的浏览,减少DB操作。
但有些数据又会偶尔更新,或者不想生成HTML。那可以使用cache缓存DB数据或者直接缓存整个页面,这里推荐使用pear的Cache_Lite或Zend_Cache,本文介绍Cache_Lite,对于Zend_Cache我们下次介绍。
首次使用请先安装pear,然后安装Cache_Lite。
pear install Cache_Lite-1.7.8
调用Cache_Lite
require_once "Cache/Lite.php";
$options = array(
'cacheDir' => '/tmp/',
'lifeTime' => 7200,
'pearErrorMode' => CACHE_LITE_ERROR_DIE
);
$cache = new Cache_Lite($options);
参数中CACHE_LITE_ERROR_DIE设置当出现错误时,使用die结束代码。非调试环境请不要使用此参数,默认不抛出错误。
对缓存数据的操作中,建议您对数据进行分组($cache_group),如首页index,列表list,内容页content
从Cache中获取数据
$data = $cache->get('id_of_the_page', $cache_group);
保存数据到缓存:
$data = $cache->save('id_of_the_page', $cache_group);
清除单一cache数据
$data = $cache->remove('id_of_the_page', $cache_group);
清除分组数据或全部数据(不传递分组参数则清除全部)
$data = $cache->clean($cache_group);
例如您想清除所有列表缓存
$data = $cache->clean('list');
所以建议您对数据作分组。更多使用方法可参考官方文档:
http://pear.php.net/package/Cache_Lite/docs