随笔分类 -  discuz技术

DISCUZ 之论坛首页加载过程,FORUM相关(转帖)
摘要:可能有理解不透彻的地方,欢迎回帖拍砖,会多加改进 1、加载class_core.php可查看全局数据初始化的另外一个笔记 2、功能模块中哦跟你的mod对应了source/forum中指定的文件。缓存模块根据当前所处的功能模块,加载必需的缓存内容,默认的缓存内容一般会在操作完指定模块之后存放在用二进制 阅读全文

posted @ 2018-01-28 23:47 alleyonline 阅读(467) 评论(0) 推荐(0)

Discuz X3.2源码解析discuz_application实例化(转)
摘要:class_core.php,主要实现了以下功能: 注册 autoload 方法和异常处理方法 C::t 方法的实现:通过 C::t 方法来调用数据层对应表的对象来实现对数据的操作 memory 的初始化:主要由 discuz_memory 类来实现 创建 discuz_application 实例 阅读全文

posted @ 2018-01-28 16:58 alleyonline 阅读(988) 评论(0) 推荐(0)

DISCUZ源码分析流程详细介绍【admin.php入口】
摘要:打开admin.php define('IN_ADMINCP', TRUE); //定义常量IN_ADMINCP为true 这样在后面的每个页面都会判断 if(!defined('IN_DISCUZ') || !defined('IN_ADMINCP')) { exit('Access Denied 阅读全文

posted @ 2018-01-28 16:56 alleyonline 阅读(1092) 评论(0) 推荐(0)

Discuz3.2源码解析 首页(index.php)
摘要:根目录下index.php 是整个系统的默认首页,以此文件入手,跟整个系统的运行流程是一致了,也方便分析整个系统的处理流程。 index.php的前几行代码(如下图),可以看出,先判断是url中是否有请求的字符串。如果有且是数字则是把当前模块默认为用户空间页面,请求的字符串为uid。 既然如此,我们 阅读全文

posted @ 2018-01-28 16:34 alleyonline 阅读(1024) 评论(0) 推荐(0)

对discuz的代码分析学习----mysql驱动(转帖)
摘要:一. 属性分析 1.tablepre :表名称前缀 2.version : 数据库版本 3.drivertype:驱动类型 4.querynum:查询数 5.curlink:当前连接 6.link:存储连接资源 7.config:配置项 8.sqldebug:sql调试 9.slaveid:不知道 阅读全文

posted @ 2018-01-28 16:32 alleyonline 阅读(196) 评论(0) 推荐(0)

对discuz的代码分析学习----论坛入口文件(转帖)
摘要:只是大致分析下执行流程,主要就是取得mod参数的值,根据取值加载控制器,控制器位置在最后一行指定了。 1 )定义应用名称,加载两个必要文件 2 )modarray数组限定了mod取值范围 3 )如果mod参数为空或者不合法都会让表达式为真,导致值为index 4 )做初始化 5 )加载控制器 阅读全文

posted @ 2018-01-28 16:30 alleyonline 阅读(302) 评论(0) 推荐(0)

读discuzx3.1 数据库层笔记(转帖)
摘要:最近开始在看discuzx3.1的代码,看到数据库层的实现,discuzx的数据库层能够支撑数据库分库,分布式部署,主要水平分表,也可以很方便的支持其他数据库。性能上,可以做读写分离,支持数据缓存。可以说,是一个很完善的数据库层的解决方案了。 数据库层分为三层,业务逻辑层封装,抽象层,和驱动层。如图 阅读全文

posted @ 2018-01-28 16:28 alleyonline 阅读(231) 评论(0) 推荐(0)

对discuz的代码分析学习————首页文件(转自陈)
摘要:对discuz的代码分析学习首页文件 如果当前地址栏存在查询字符,并且是一个数字,条件成立。 查询字符:www.baidu.com/index.php?aaa=bbb aaa=bbb就是查询字符如果条件成立,则把home赋值给$_ENV['curapp'] ; $_ENV可以理解为类似于$_GET的 阅读全文

posted @ 2018-01-28 16:26 alleyonline 阅读(329) 评论(0) 推荐(0)

discuz入口文件index.php的思想分析
摘要:入口文件index.php分析: 整个文件就是对域名的判断 相关设置在后台-》全局-》域名设置中 相关文件保存在/data/cache/cache_domain.php中 //$_SERVER['QUERY_STRING']获取url中参数部分(也就是问号后面的字符) 当url参数不为空并且参数是数 阅读全文

posted @ 2018-01-28 16:16 alleyonline 阅读(1149) 评论(0) 推荐(0)

Discuz X3.2源码解析 $_G变量
摘要:$_G定义在discuz_application::_init_env()函数中。是一个array对象。 $_G里面保存了许多预处理信息,缓存了很多配置,可以提供Discuz的性能。 $_G定义在discuz_application::_init_env()函数中。是一个array对象。 $_G里面 阅读全文

posted @ 2018-01-28 16:08 alleyonline 阅读(313) 评论(0) 推荐(0)

Discuz X3.2源码解析 论坛模块(forum.php)转自百度
摘要:论坛的主页面为forum.php,论坛的各个功能都以此为入口,然后请求参数mod指定子模块。 forum.php 的代码并不多,结构简单。里面引用了两个文件./source/class/class_core.php 和 ./source/function/function_forum.php。 cl 阅读全文

posted @ 2018-01-28 00:13 alleyonline 阅读(1397) 评论(0) 推荐(0)

Discuz X3.2源码解析 discuz_application类(转自百度)
摘要:discuz_application在/source/class/discuz/discuz_application.php中。 discuz_application在/source/class/discuz/discuz_application.php中。 discuz_application继承 阅读全文

posted @ 2018-01-28 00:12 alleyonline 阅读(2482) 评论(0) 推荐(0)

discuz代码解析(初始化应用的过程)
摘要:流程结构(随便找个地址来分析下,比如 设置 -> 个人资料 -> 联系方式;地址是:home.php?mod=spacecp&ac=profile&op=contact) (一)首先打开home.php文件 看到第17行 1 require_once './source/class/class_co 阅读全文

posted @ 2018-01-28 00:07 alleyonline 阅读(1702) 评论(0) 推荐(0)

Discuz 整体架构及内核浅析二:内核功能(For DzX3.2)
摘要:Discuz!X 系列的内核是使用面向对象模式开发的,因此每一次页面访问其实都有一个内核实例化的过程,下文将简单介绍一下内核的实现,以及提供的相关功能。1、实例化操作通常只有通过 Discuz 入口文件对站点进行访问才会正常进行内核实例化,这些入口文件位于 Dz 根目录下,如:forum.php、h 阅读全文

posted @ 2018-01-27 23:07 alleyonline 阅读(420) 评论(0) 推荐(0)

discuz二次开发笔记(一)------$_G全解析,discuz_g_PHP教程
摘要:$_G 保存了 Discuz! 中所有的预处理数据缓存能够很好的提高程序的性能,一些配置数据没必要每次都查询数据库,只要在修改了的时候更新下缓存即可。Discuz! 中所有的缓存保存在 $_G[cache] 中$_G[member] 会员信息数据$_G[uid] 用户 uid$_G[username 阅读全文

posted @ 2018-01-27 22:30 alleyonline 阅读(411) 评论(0) 推荐(0)

php discuz核心类函数分析_PHP教程
摘要:<?php /*** [Discuz!] (C)2001-2099 Comsenz Inc.* This is NOT a freeware, use is subject to license terms** $Id: class_core.php 6914 2010-03-26 12:52:36 阅读全文

posted @ 2018-01-27 22:26 alleyonline 阅读(386) 评论(0) 推荐(0)

discuz 3.2之class_core.php解析
摘要:class_core.php是discuz 3.x的核心文件,几乎所有PHP脚本都有引用此文件初始化论坛运行环境。以下解析引用3.2版discuz。 line 12-15:常量定义IN_DISCUZ: true //用于防止内部PHP引用文件被直接调用。DISCUZ_ROOT: E:\\projec 阅读全文

posted @ 2018-01-27 22:11 alleyonline 阅读(640) 评论(0) 推荐(0)

discuz缓存机制
摘要:一、 discuz缓存机制分析: 使用缓存机制的目的很明显,降低服务器性能的消耗,对于常用且变动比较小的数据的数据,可以尽可能的使用缓存来解决,代替最原生的不断的进行数据库查询匹配的过程。而Discuz中提供的数据缓存方式包括内存、数据库、文件三种方式,具体如下。 (1)、项目根目录/config/ 阅读全文

posted @ 2018-01-27 21:56 alleyonline 阅读(1608) 评论(0) 推荐(0)

Discuz开发之function_core常用函数解析
摘要:<?php /** * [Discuz!] (C)2001-2099 Comsenz Inc. * This is NOT a freeware, use is subject to license terms * * $Id: function_core.php 34523 2014-05-15 阅读全文

posted @ 2018-01-27 21:48 alleyonline 阅读(2009) 评论(0) 推荐(0)

[插件制作] Discuz!插件的通过数据库读取和缓存读取获取插件信息和参数
摘要:编写插件程序时,可能需要读取一些插件的信息,如果插件需要使用者进行配置,还需要读取使用者设置的参数值。Discuz! 允许插件程序使用数据库读取和缓存读取这两种方法获取插件信息和参数。Discuz! 的插件接口已经对插件信息进行了合理的缓存,使用缓存读取的方式,将比数据库读取速度更快,消耗的资源更是 阅读全文

posted @ 2018-01-27 18:47 alleyonline 阅读(511) 评论(0) 推荐(0)

导航