Discuz!本身的缓存机制挺不错,具体可看Discuz!官方文档的描述:缓存机制。
上网查了一下插件开发中插入缓存的文章,在百度空间找到一篇,但是按照文章的做法却没有实现。后来根据文章的资料,终于找到了在Discuz!中存入缓存的函数:save_syscache,用法如下:
save_syscache(string $cachenames, mix $data);
$cachenames是你的缓存专有的名字,
$data则是缓存中需要存储的数据,那么写下如下代码:
$data = array('title' => 'hello', 'content' => '大家好');
save_syscache('hw_hello', $data);
那么$data中的数据就被存入了缓存中了,如果要载入,则使用loadcache函数,loadcache函数用法是:
loadcache(string $cachenames, [bool $force = false]);
$cachenames是要载入的缓存名;
$force我也不太清楚是什么……官方文档中也没有说明,知道的麻烦告知一声,呵呵,这个参数可以省略,默认为false。
比如刚才我们存入了hw_hello这个缓存,现在要读取,则这么写:
loadcache('hw_hello');
那么缓存就被加载,存放于$_G['cache']中,可以通过$_G['cache'][cachename]来访问你的缓存,比如:
print_r($_G['cache']['hw_hello']);
如无意外,这一句代码的运行结果是:
Array([title] => hello, [content] => 大家好)
本文来源 http://www.discuz.net/forum.php?mod=viewthread&tid=3448804
本文来源 http://www.discuz.net/forum.php?mod=viewthread&tid=3448804