缓存__Discuz x2.0在初始化时添加自己的缓存
来源:互联网 发布:淘宝小号 担保交易 编辑:程序博客网 时间:2024/05/21 01:52
转载请注明出处,谢谢:http://write.blog.csdn.net/postedit/8199827
如何创建?
假设discuz数据库中已经有下面这个数据表:pre_xxjob_cardcategory,保存的是充值卡信息
我们切换到discuz目录source/function/cache/下创建cache_plugincard.php,代码如下:
<?phpif(!defined('IN_DISCUZ')){ exit("Access Denied");}function build_cache_plugincard(){ $data=array(); $query=DB::query("SELECT name FROM ".DB::table('xxjob_cardcategory')); //从数据库检索数据 while($row=DB::fetch($query)){ $data[]=$row['name']; //将数据存放到数据中 } save_syscache('plugincard',$data); //通过save_syscache()将数组保存到pre_common_syscache表中}?>
保存后我们到管理后台更新一下缓存,然后查看pre_common_syscache表中会多出一条数据,表明已经创建成功
如何使用?
我们在discuz根目录下创建一个单页test.php
<?phprequire_once './source/class/class_core.php';require_once './source/function/function_home.php';$discuz = & discuz_core::instance();$discuz->cachelist=array("plugincard");//加载指定缓存,内部会自动调用loadcache();$discuz->init();print_r($_G['cache']['plugincard']) ;?>
运行显示结果是:
当然我们也可以自己手动加载缓存
loadcache('plugincard');print_r($_G['cache']['plugincard'];
如何自己创建缓存?不依靠$discuz->init()初始化.
如果不想让系统自动初始化缓存,则可以自己单独用save_syscache()和loadcache();
下面是伪代码:
//从数据库获取数据$query=DB::query('xxxxxx');//数据存放到数组里$arr=array();while(DB::fetch($query){ $arr=.....;}//保存到数据表中save_syscache('plugincard',$arr);..............//使用时这样loadcache('plugincard');//然后就可以在$_G全局变量使用print_r($_G['cache']['plugincard']);
如何更新缓存?
在管理后台点"更新缓存"会更新全部系统缓存,当然我们也可以自己更新,使用 updatecache($name);
当我们在数据库中新增或更新数据之后,可以调用该函数更新缓存表里的数据
- 缓存__Discuz x2.0在初始化时添加自己的缓存
- 内存缓存__discuz x2-memcached内存缓存的使用
- 缓存__Discuz!X 中会自动初始化的一些系统缓存
- 缓存__Discuz X缓存机制浅析
- 内存缓存__discuz缓存机制(内存缓存,memory())
- 自己写的缓存
- 制作自己的缓存池
- 添加缓存
- 清除缓存功能的添加
- G变量__Discuz! X2 之 G变量
- DISCUZ X2.5数据表内存级缓存
- 缓存__利用Discuz!X2缓存(树洞之门,案例)
- 自己做的一个缓存系统Cache
- 自己写的缓存类,备份
- Bitmap的三级缓存----自己封装BitmapLoader
- 【Unity】构建自己的GameObject缓存池
- 自己封装的 —— 三级缓存
- 如何在更新数据库时,同时更新缓存的数据/(不丢弃缓存再重新读取数据来缓存)
- tomcat配置虚拟目录
- ArcGIS Runtime for Android开发教程V2.0(7)基础篇---空间要素可视化2
- JSP自定义标签的开发与应用
- 128-bit整数定义
- SQL Server角色权限分配
- 缓存__Discuz x2.0在初始化时添加自己的缓存
- cuda 内存分类和使用
- 面向对象设计疑问--类对象中的类对象
- stuts2开发流程个人总结
- p4 build
- java 移位操作
- Java 信号量 Semaphore 介绍
- sync_binlog=1 or N
- 史上最通俗的《深入理解计算机网络》目录