您的位置:首页 > 编程语言 > PHP开发

phpcms 缓存

2016-01-18 11:04 706 查看

PHPCMS设置和读取缓存文件

PHPCMS开发中经常用到读取文件缓存,比如常见的当前站点类别,是保存在缓存文件中的,读取的时候 用:$this->categorys = getcache(‘category_content_’.$this->siteid,’commons’);

把常用的一些配置和需要经常用到的参数等存入缓存,可以大大提高程序的运行效率,避免重复读取,PHPCMS提供了设置和读取文件缓存的方法,本文讲讲PHPCMS设置缓存函数setcache和读取缓存函数getcache。

在\libs\functions\global.func.php中定义了设置缓存函数setcache:

/**
* 写入缓存,默认为文件缓存,不加载缓存配置。
* @param $name 缓存名称
* @param $data 缓存数据
* @param $filepath 数据路径(模块名称) caches/cache_$filepath/
* @param $type 缓存类型[file,memcache,apc]
* @param $config 配置名称
* @param $timeout 过期时间
*/
function setcache($name, $data, $filepath='', $type='file', $config='', $timeout=0) {
pc_base::load_sys_class('cache_factory','',0);
if($config) {
$cacheconfig = pc_base::load_config('cache');
$cache = cache_factory::get_instance($cacheconfig)->get_cache($config);
} else {
$cache = cache_factory::get_instance()->get_cache($type);
}

return $cache->set($name, $data, $timeout, '', $filepath);
}


PHPCMS设置缓存文件

如果要把一个配置或者变量保存到缓存,可以这么用setcache函数

$infos = $this->db->select();
foreach ($infos as $info){
$servers[$info['id']] = $info;
}
setcache('downservers', $servers,'commons');


第一个参数表示缓存名称,第二个参数是这个缓存的内容,第三个参数是缓存的位置,这里commons是保存在缓存文件夹的commons文件夹中。

PHPCMS读取缓存文件

设置好了缓存,在用到缓存的时候怎么读取呢?也很简单,用getcache函数:

$downservers = getcache(‘downservers’,’commons’)

第一个参数就是设置的缓存名称,第二个参数是缓存位置。和设置缓存的时候是对应的
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: