discuzX源代码分析--portal.php
//====定义app类型id以及当前脚本名称常量====define('APPTYPEID', 4);
define('CURSCRIPT', 'portal');
//====加载核心类库,函数库====
require './source/class/class_core.php';
//====貌似还分的挺细的====
require './source/function/function_home.php';
require './source/function/function_portal.php';
//====实例化核心类,为了兼容php4使用了&,引用赋值,实现了传说中的单例模式====
$discuz = & discuz_core::instance();
//====设置缓存列表====
$cachelist = array('userapp', 'blockclass', 'portalcategory');
$discuz->cachelist = $cachelist;
//====初始化系统====
$discuz->init();
//====判断$_GET['mod']是否为空或是否在允许数组中,如果为空或不存在则更改为index====
if(empty($_GET['mod']) || !in_array($_GET['mod'], array('list', 'view', 'comment', 'portalcp', 'topic', 'attachment'))) $_GET['mod'] = 'index';
//====定义当前模块常量====
define('CURMODULE', $_GET['mod']);
//====执行插件钩子====
runhooks();
//====加载source/module/portal/文件夹下的mod文件====
require_once libfile('portal/'.$_GET['mod'], 'module');
查看完整版本: discuzX源代码分析--portal.php
Tags: discuz