`
jancy
  • 浏览: 22394 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

discuz核心类库class_core的函数注释

阅读更多

class discuz_core {

	// 数据库存储引擎
	var $db = null;

	// 内存缓冲object
	var $mem = null;

	// 会话 object
	var $session = null;

	// 程序配置
	var $config = array();

	// $_G 数组的映射
	var $var = array();

	// 加载缓存的数组
	var $cachelist = array();

	// 是否初始化
	var $init_setting = true;
	var $init_user = true;
	var $init_session = true;
	var $init_cron = true;
	var $init_misc = true;
	var $init_memory = true;
	var $init_mobile = true;

	// 是否已经初始化
	var $initated = false;

	// 列举全局变量,为清理做准备
	var $superglobal = array(
		'GLOBALS' => 1,
		'_GET' => 1,
		'_POST' => 1,
		'_REQUEST' => 1,
		'_COOKIE' => 1,
		'_SERVER' => 1,
		'_ENV' => 1,
		'_FILES' => 1,
	);

	/**
	 * 建立唯一进程
	 * @staticvar discuz_core $object
	 * @return discuz_core
	 */
	function &instance() {
		......
	}

	/**
	 * 预处理的调用
	 */
	function discuz_core() {
		$this->_init_env();
		$this->_init_config();
		$this->_init_input();
		$this->_init_output();
	}

	/**
	 * 核心初始化
	 */
	function init() {
		if(!$this->initated) {
			$this->_init_db();
			$this->_init_memory();
			$this->_init_user();
			$this->_init_session();
			$this->_init_setting();
			$this->_init_mobile();
			$this->_init_cron();
			$this->_init_misc();
		}
		$this->initated = true;
	}

	/**
	 * 定义PHP环境信息常量和全局变量 $_G
	 *
	*/
	function _init_env() {
		......
	}

	/**
	 * 禁止对全局变量注入
	 * slashes 处理
	 * cookie 处理(去掉cookie前缀)
	 * 将 $_GET 与 $_POST 合并
	 *
	*/
	function _init_input() {
		......
	}

	/**
	 * 加载配置文件
	 *
	*/
	function _init_config() {
		......
	}

	/**
	 * 输出处理
	 * GET 参数跨站检测
	 * 防页面刷新
	 * gzip处理
	 * 字符集处理
	 *
	*/
	function _init_output() {
		......
	}

	/**
	 * 禁止机器人访问
	 *
	*/
	function reject_robot() {
		......
	}

	/**
	 * GET 参数跨站检测
	 *
	 * 2011-3-8 增加对 CONTENT-TRANSFER-ENCODING 代码的检测 (IE MHTML 漏洞)
	 */
	function _xss_check() {
		......
	}

	/**
	 * 获取客户端IP
	 *
	 */
	function _get_client_ip() {
		......
	}

	/**
	 * 初始化数据库类,同时选择主从数据库
	 *
	 */
	function _init_db() {
		......
	}

	/**
	 * 初始化session
	 *
	 */
	function _init_session() {
		......
	}

	/**
	 * 处理当前用户信息
	 *
	 */
	function _init_user() {
		......
	}

	/**
	 * 设置当前用户为游客
	 *
	 */
	function _init_guest() {
		......
	}

	/**
	 * 处理计划任务
	 *
	 */
	function _init_cron() {
		......
	}

	/**
	 * 杂项
	 * 调入核心语言包
	 * 处理全局时区设置
	 * 处理被封禁用户
	 * 站点开关检查
	 * 手机端控制每页显示主题数和回帖数
	 * 判断并执行每日登录奖励积分
	 *
	*/
	function _init_misc() {
		......
	}

	/**
	 * 加载全局设置 setting,风格 style,下一个任务 cronnextrun
	 *
	*/
	function _init_setting() {
		......
	}

	/**
	 * 处理当前界面风格
	 * 定义风格常量
	 *
	*/
	function _init_style() {
		......
	}

	/**
	 * 初始化Discuz 内存读写引擎
	 *
	*/
	function _init_memory() {
		......
	}

	/**
	* 手机访问时的开关判断,浏览器判断和相关特性
	*
	*/
	function _init_mobile() {
		......
	}

	/**
	* 设置时区
	* @param $timeoffset - 时区数值
	* @return 无
	*/
	function timezone_set($timeoffset = 0) {
		......
	}

	/**
	* 手机转码的$_POST多层数组递归转码
	* @param $value - 字符串
	* @return 返回转义好的字符串
	*/
	function mobile_iconv_recurrence($value) {
		......
	}
}
 
分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

    discuz核心函数库function_core的函数注释

    discuz核心函数库function_core的函数注释

    [其他类别]整合discuz6.0的php的class_cls_discuz.zip

    中的类库文件,其中的 `class` 表示类,而 `cls_discuz` 可能是 "Discuz!" 的简写,用于组织和封装特定功能的代码。 在标签部分为空,这意味着没有提供额外的分类信息,所以我们需要依赖标题和描述来理解文件内容...

    discuz!nt2.5数据库和类库说明文档

    NT2.5数据库和类库说明文档》是针对Discuz!NT2.5这个开源社区软件的重要技术参考资料。Discuz!NT是一款基于.NET框架开发的论坛系统,深受许多网站管理员喜爱,用于搭建互动性强的社区平台。本文将深入探讨其数据库...

    Discuz X3核心文件解析

    针对PHP初学者,在入口文件class_core.php后的核心文件discuz_application.php解析,

    Discuz_X3.3_SC_UTF8.zip

    本文将从核心功能、系统架构、安全性和用户体验四个方面深入探讨Discuz! X3.3 SC_UTF8的核心知识点。 首先,核心功能方面,Discuz! X3.3 SC_UTF8强化了社区互动体验。它拥有强大的论坛模块,支持主题分类、帖子回复...

    Discuz_X2.5_SC_UTF8.zip

    《搭建Discuz X2.5 SC UTF8论坛的详尽指南》 Discuz! X2.5 SC UTF8是一款由Comsenz公司开发的社区论坛软件,它以其强大的功能、丰富的扩展性和良好的用户体验,深受广大网站管理员的喜爱。该版本是Discuz! X2系列的...

    Discuz_X3.4_SC_UTF8【20200818】.zip

    《深入解析Discuz! X3.4 SC_UTF8:20200818官方版本》 Discuz! X3.4 SC_UTF8【20200818】是一个深受用户喜爱的社区论坛系统,其核心在于提供稳定且功能丰富的交互平台。这个版本在2020年8月18日发布,基于UTF-8编码...

    Discuz_X3.2_SC_UTF8.zip

    这个版本是 Discuz! 系列产品的一个重要里程碑,它提供了丰富的社区交流功能和优化的用户体验。 【描述】"Discuz论坛,大家可以下载玩玩,不过是要赋予在PHP环境里,慎用" 提示我们,Discuz! 是一个基于服务器端...

    Discuz_X3.2_SC_UTF8

    Discuz_X3.2_SC_UTF8.zip,安装包。

    Discuz_X3.5_SC_UTF8.zip

    "Discuz_X3.5_SC_UTF8.zip" 是一个压缩包文件,其中包含了 Discuz! X3.5 版本的简体中文 UTF-8 编码版本。Discuz! 是一个非常流行的开源社区论坛软件,它允许用户创建和管理自己的在线论坛。此版本为 X3.5,意味着它...

    Discuz_X1.5_SC_GBK.dz1.5论坛

    《深入解析Discuz! X1.5 SC_GBK:打造高效社区论坛》 Discuz! X1.5 是一款基于PHP和MySQL构建的开源社区论坛软件,由Comsenz公司开发,广泛应用于各类网站,尤其是中文社区。"SC_GBK"则代表该版本支持GBK编码,适用...

    Discuz_X3.2_SC.UTF8.zip

    《深入解析Discuz! X3.2 SC.UTF8:构建高效社区论坛的基石》 Discuz! 是一款深受广大网站管理员喜爱的开源社区论坛软件,它以其强大的功能、易用性和高度可定制性赢得了广大用户的青睐。本次我们将聚焦于Discuz! ...

    Discuz_X2_SC_UTF8

    《Discuz! X2 SC_UTF8:构建社区论坛的关键组件》 Discuz! X2 SC_UTF8 是一款基于PHP和MySQL的开源社区论坛软件,它以其强大的功能、易用性和可扩展性在中国互联网环境中广受欢迎。这个软件版本是针对简体中文用户...

    [其他类别]整合discuz6.0的php的class_cls_discuz.rar

    【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。...【项目质量】:所有源码都经过严格测试,可以直接...

    Discuz_X3.1_SC_UTF8

    《全面解析:基于LNMP架构搭建Discuz! X3.1论坛》 Discuz! X3.1是一款深受用户喜爱的社区论坛软件,以其强大的功能、丰富的插件和易用性,广泛应用于各类网站。本篇文章将深入探讨如何在Linux(Nginx+MySQL+PHP)...

    Discuz_X3.2_SC_GBK

    Discuz! X3.2 SC_GBK 是一套由北京康盛新创科技有限责任公司开发的社区论坛软件系统,专门用于构建交互性强、功能丰富的在线社区。这个版本是基于GBK编码,适应于处理中文字符,确保在中文环境下的良好运行。 1. **...

Global site tag (gtag.js) - Google Analytics