admin 发表于 2015-11-21 22:57:01

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) {
                ......
        }
}
页: [1]
查看完整版本: discuz核心类库class_core的函数注释