摘要: 程序执行到application类中的init()方法。在该方法中根据mca参数值加载了PC_PATH/modules/content/index.php文件,并对该文件中的index类进行初始化,然后访问了该类中的init()方法。PC_PATH/modules/content/index.phpdefined('IN_PHPCMS') or exit('No permission resources.');//防止恶意调用//模型缓存路径define('CACHE_MODEL_PATH',CACHE_PATH.'caches_mode 阅读全文
posted @ 2014-02-04 08:09 张大千 阅读(520) 评论(0) 推荐(0) 编辑
摘要: /** * 调用件事 */private function init() { $controller = $this->load_controller(); if (method_exists($controller, ROUTE_A)) { if (preg_match('/^[_]/i', ROUTE_A)) { exit('You are visiting the action is to protect the private action'); } else { call_user_func(arra... 阅读全文
posted @ 2014-02-04 08:08 张大千 阅读(308) 评论(0) 推荐(0) 编辑
摘要: (不完全测试)-1:草稿0:普通帖子1:本版置顶2:分类置顶3:全局置顶 阅读全文
posted @ 2014-02-03 21:52 张大千 阅读(649) 评论(0) 推荐(0) 编辑
摘要: pc_base::creat_app()主要工作就是把application这个类初始化。application类的初始化到底干了些什么呢,我们研究一下。/** * 构造函数 */public function __construct() { $param = pc_base::load_sys_class('param');//加载param类并初始化 define('ROUTE_M', $param->route_m()); define('ROUTE_C', $param->route_c()); define('ROU 阅读全文
posted @ 2014-01-29 22:24 张大千 阅读(774) 评论(0) 推荐(0) 编辑
摘要: if(pc_base::load_config('system','gzip') && function_exists('ob_gzhandler')) { ob_start('ob_gzhandler');} else { ob_start();}启用输出缓存。到此为止,base.php已经加载完毕,接下来我们看下pc_base::creat_app();到底干了些什么活。/** * 初始化应用程序 */public static function creat_app() { return self::load_ 阅读全文
posted @ 2014-01-29 22:22 张大千 阅读(557) 评论(0) 推荐(0) 编辑
摘要: 加载完公共函数库,下面加载网站的主要配置和一些静态文件的路径。pc_base::load_config('system','errorlog') ? set_error_handler('my_error_handler') : error_reporting(E_ERROR | E_WARNING | E_PARSE);//设置本地时差function_exists('date_default_timezone_set') && date_default_timezone_set(pc_base::load_co 阅读全文
posted @ 2014-01-29 22:21 张大千 阅读(1427) 评论(0) 推荐(0) 编辑
摘要: index.php中引入了phpcms框架的入口文件,下面我们看下这个入口文件/phpcms/base.phpdefine('IN_PHPCMS', true);//防止恶意调用 //PHPCMS框架路径define('PC_PATH', dirname(__FILE__).DIRECTORY_SEPARATOR); //重新定义网站根目录if(!defined('PHPCMS_PATH')) define('PHPCMS_PATH', PC_PATH.'..'.D... 阅读全文
posted @ 2014-01-29 22:19 张大千 阅读(642) 评论(0) 推荐(0) 编辑
摘要: PHPCms(v9)的文件结构列表如下图:既然是源码分析,我们就耐着性子按照程序的执行顺序来分析一下PHPCMS的源码。下面我们来看一下首页的显示过程,首先我们打开PHPCMS根目录的index.phpindex.phpdefine('PHPCMS_PATH', dirname(__FILE__).DIRECTORY_SEPARATOR); include PHPCMS_PATH.'/phpcms/base.php'; pc_base::creat_app();在index.php中首先定义了网站的根目录,然后引入phpcms框架的入口文件base.... 阅读全文
posted @ 2012-11-09 08:32 张大千 阅读(361) 评论(0) 推荐(0) 编辑