缓存__Discuz!X 中会自动初始化的一些系统缓存
来源:互联网 发布:关于淘宝的书籍 编辑:程序博客网 时间:2024/05/20 16:37
转自:http://blog.ihipop.info/2012/02/2990.html,如需转载请注明出处
"\ultrax\source\class\class_core.php" 约536行
usergroup_【当前用户的groupid】
admingroup_【当前用户的adminid】
setting
style_default
cronnextrun
usergroup_【newusergroupid】
style_【主题ID】
此外,如果你进入一些特定页面,还会调用更深层次的一些缓存。比如编辑器表情标签初始化的时候会载入similes缓存,使用plugin.php调用插件的时候会自动载入plugin缓存等等,如果需要在别处调用某一处缓存,比如plugin,similes,可以直接传给loadcache($cachenames, $force = false)一个缓存名称后就可以获取到缓存数据。当然传入一个数组也是可以的。
以下是缓存的工作原理 via: discuz dev wiki
如何注册系统缓存呢?可以使用dX基带的缓存扩展机制。
很简单 在\source\function\cache增加一个文件,比如以dz 自己带到smiles为例。
<?php/** * [Discuz!] (C)2001-2099 Comsenz Inc. * This is NOT a freeware, use is subject to license terms * * $Id: cache_smilies.php 22550 2011-05-12 05:21:39Z monkey $ */if(!defined('IN_DISCUZ')) {exit('Access Denied');}function build_cache_smilies() {$data = array();$query = DB::query("SELECT s.id, s.code, s.url, t.typeid FROM ".DB::table('common_smiley')." sLEFT JOIN ".DB::table('forum_imagetype')." t ON t.typeid=s.typeid WHERE s.type='smiley' AND s.code<>'' AND t.available='1' ORDER BY LENGTH(s.code) DESC");$data = array('searcharray' => array(), 'replacearray' => array(), 'typearray' => array());while($smiley = DB::fetch($query)) {$data['searcharray'][$smiley['id']] = '/'.preg_quote(dhtmlspecialchars($smiley['code']), '/').'/';$data['replacearray'][$smiley['id']] = $smiley['url'];$data['typearray'][$smiley['id']] = $smiley['typeid'];}save_syscache('smilies', $data);}?>
建立这个cache_【cachename】.php和build_cache_【cachename】函数,按照指定的流程取出数据,使用save_syscache保存就可以了。按照标准方法建立的缓存,自动会加入缓存机制,后台更新缓存时,都会自动执行。
手动更新缓存的话,可以直接使用updatecache(),传名字和数组进去都可以。如果提示没有这个函数,需要
require_once libfile('function/cache');一下。更新缓存后就可以load来得到最新的缓存数据。使用$_G['cache']['【cachename】']来进行访问。
$adminid
1为管理员
2为总版主
3为版主
0表示否,即非管理组
-1表示 特殊组及除了1,2,3以外的系统组(即4,5,6,7,8组)
$displayorder
0 正常帖
1 板块置顶 1级置顶
2 分类置顶 2级置顶
3 全局置顶 3级置顶
-1 被删除的帖 回收站
-2 待审核的帖
-3 审核忽略
-4 草稿
- 缓存__Discuz!X 中会自动初始化的一些系统缓存
- 缓存__Discuz X缓存机制浅析
- 缓存__Discuz x2.0在初始化时添加自己的缓存
- 内存缓存__discuz x2-memcached内存缓存的使用
- 内存缓存__discuz缓存机制(内存缓存,memory())
- Android中图片缓存的一些总结
- 缓存的一些理解
- 缓存的一些问题
- Web系统中缓存的应用
- 大型web系统中缓存的使用
- 大型web系统中缓存的使用
- cocos2d-x中缓存总结
- CCAtlasNode(CCAtlasNode封装了一个CCTextureAtlas的变量,CCTextureAtlas初始化图片文件的时候会把图片加载到缓存(CCTextureCache)中:)
- 缓存,缓存系统
- Integer的自动缓存大小
- 自动清楚浏览器的缓存
- 在系统中使用缓存
- 如何解iOS系统中系统库的dyld缓存
- android NDK jni中c和c++文件报错
- 自定义标签2
- linxu下mysql导入中文乱码
- 分割窗口
- windows xp上安装包在win7下运行注意问题
- 缓存__Discuz!X 中会自动初始化的一些系统缓存
- [Android实例] Android瀑布流加载图片效果实例
- linux做单臂路由实现trunk 使vlan之间通信
- 网页防篡改系统原理
- java excel 导出
- java解析json
- Sybase SQL Server索引的使用和优化
- onvif 笔记五(discovery client)
- linux中wget的使用