下边是Discuz! 的文档文件目录及相匹配的叙述。平时的开发设计中关键会涉及到到source和template文件目录。尽管文件目录和文档都许多,可是具体上构造還是很清楚,大多数数状况下根据文档名和文件目录就可以了解某一文档的功效。例如:
\source\class\discuz\discuz_censor.php 用于解决比较敏感词过虑的类 \source\function\function_credit.php 解决積分实际操作的涵数库 \source\module\forum\forum_viewthread.php 解决贴子显示信息网页页面的控制模块此外,source文件目录下的class、function、module、include、admincp这好多个文档夹下的程叙文件取名要遵循以下标准:文档名作为前缀为所属文件目录的姓名再加下横线(_) 文件目录构造详尽:
/┬── api 外界插口 │ ├── connect 腾迅互连 │ ├── db UCenter数据信息库备份数据插口 │ ├── google Google模块应用 │ ├── javascript 数据信息和广告宣传的 JS启用 │ ├── manyou manyou运用及检索等有关服务 │ └── trade 线上付款插口 ├── archiver 社区论坛静态数据化 ├── config 站点配备文档 ├── data 数据信息缓存文件及配件 │ ├── attachment 提交的文档文件目录 │ │ ├── album 相册图片专用型 │ │ ├── block DIY专用型 │ │ ├── common 公共性提交 │ │ ├── forum 社区论坛配件专用型 │ │ ├── group 群聊标志和头顶部照片专用型 │ │ ├── portal 门户网提交文档专用型 │ │ ├── profile 本人材料专用型 │ │ └── temp 临时性文档 │ ├── avatar 视頻验证专用型 │ ├── backup 站等级据备份数据 │ ├── cache 数据信息缓存文件 │ ├── diy DIY控制模块缓存文件 │ ├── ipdata Discuz!IP库 │ ├── log 站点系统日志,前/后台管理管理方法系统日志、不正确系统日志等 │ ├── plugindata 软件缓存文件数据信息 │ ├── template 模版缓存文件文件目录 │ └── threadcache 贴子缓存文件 ├── install 安裝文件目录 ├── source 编码主文件目录 │ ├── admincp 后台管理程序 │ │ ├── cloud Discuz!云服务平台 │ │ ├── menu 莱单 │ │ └── moderate 审批作用 │ ├── archiver 社区论坛静态数据化作用编码 │ ├── class 类文档文件目录 │ │ ├── adv 站点广告宣传作用 │ │ ├── block DIY控制模块作用文档 │ │ ├── cache 缓存文件类 │ │ ├── db 数据信息库类 │ │ ├── discuz discuz类 │ │ ├── forum 社区论坛 │ │ ├── helper 储放从function_core分离出来出去的一一部分涵数 │ │ ├── lib 专用工具类的结合类 │ │ ├── magic 游戏道具 │ │ ├── memory 运行内存类 │ │ ├── secqaa 认证问与答 │ │ ├── table 数据信息表实际操作类 │ │ └── task 站点每日任务作用 │ ├── function 涵数文档 │ │ └── cache 缓存文件作用分拆文件目录 │ ├── include 被包括的文档 │ │ ├── collection 淘帖 │ │ ├── cron 方案每日任务 │ │ ├── misc 杂类 │ │ ├── modcp 前台接待社区论坛管理方法 │ │ ├── portalcp 前台接待门户网管理方法 │ │ ├── post 贴子有关 │ │ ├── search 检索作用 │ │ ├── space 佳园和本人有关作用 │ │ ├── spacecp 本人设定有关 │ │ ├── table 编号变换数据信息 │ │ ├── thread 查询主题风格有关 │ │ └── topicadmin 前台接待主题风格管理方法 │ ├── language 站点語言包 │ │ ├── adv 广告宣传 │ │ ├── block DIY控制模块 │ │ ├── forum 社区论坛 │ │ ├── group 群聊 │ │ ├── home 佳园 │ │ ├── magic 游戏道具 │ │ ├── member 登陆申请注册网页页面語言 │ │ ├── mobile 手机上浏览作用語言 │ │ ├── portal 门户网語言 │ │ ├── ranklist 排名榜語言 │ │ ├── search 检索 │ │ ├── secqaa 安全性问与答 │ │ ├── tag 标识 │ │ ├── task 每日任务 │ │ └── userapp manyou运用 │ ├── module 作用控制模块 │ │ ├── connect 腾迅互连 │ │ ├── forum 社区论坛 │ │ ├── group 群聊 │ │ ├── home 佳园 │ │ ├── member 登陆申请注册 │ │ ├── misc 杂类 │ │ ├── portal 门户网 │ │ ├── search 检索 │ │ └── userapp 运用 │ └── plugin 软件文件目录 │ ├── cloudstat Discuz!云服务平台 │ ├── myapp Manyou运用 │ ├── myrepeats 背心作用 │ ├── qqconnect 腾迅互连 │ └── soso_smilies 腾迅搜一搜小表情 ├── static 非PHP文档 │ ├── image 页面照片 │ ├── js 站点JS脚本制作 │ ├── space 室内空间肌肤 │ └── topic 门户网肌肤 ├── template 模版文件目录 │ └── default 默认设置设计风格 ├── uc_client UCenter顾客端程序 └── uc_server UCenter服务端程序
Discuz! X2.5规定PHP版本号超过5.1,抛下了对PHP4的适用,因而适用大量的PHP新特点,全自动载入类文档便是在其中一个。在class_core.php中有那样一段编码:
if(function_exists('spl_autoload_register')) { spl_autoload_register(array('core', 'autoload')); } else { function __autoload( class) { return core::autoload( class);
当启用不会有的类的情况下便会启用core::autoload方式来载入相对的类文档。因此大家在开发设计的全过程中就需要采用某一类的情况下也不必须include或是require了。要是相匹配的类文档存有,而且取名合乎标准,立即启用就可以。
留意:商品中某些独特类因为历史时间缘故没法完成全自动载入,需手动式解决 include或require
class_core.php是通道起动文档,关键完成了下列作用: 申请注册 autoload 方式和出现异常解决方式:实际参照全自动载入 C::t 方式的完成:根据 C::t 方式来启用数据信息层相匹配表的目标来完成多数据的实际操作 memory 的原始化:关键由 discuz_memory 类来完成 建立 discuz_application 案例 ( discuz_application 是原先 discuz! X2 的 discuz_core):开展关键的原始化实际操作,关键能加载配备文档、载入自然环境自变量、联接数据信息库、载入setting信息内容、原始化客户数据信息、session的原始、方案每日任务等 缩写类的投射:将 class core 投射为 C,discuz_database 投射为 DB,仅为便捷应用,编码以下
class C extends core {} class DB extends discuz_database {}