您现在的位置是:首页 > cms教程 > phpcms教程phpcms教程
phpcmsv9源码pc_base::creat_app()参数说明
程欢2025-06-10phpcms教程已有人查阅
导读在前面我们已经知道了,这个load_sys_classs静态方法,它加载了PC_CMS/libs/classes/application.class.php默认的这个函数这个方法是实例化的,所以我们找到application.class.php
return self::load_sys_classs('application');
在前面我们已经知道了,这个load_sys_classs静态方法,它加载了PC_CMS/libs/classes/application.class.php默认的这个函数这个方法是实例化的,所以我们找到application.class.php,看看他的构造函数吧
构造函数就简单的几行代码,第15行,加载了param.class.php,后面定义的常量都和param有关,让我们来看看这个类文件
12先声明一个私有变量$route_config
下面的构造函数get_magin_quotes_gpc()是检测是否开启这个配置,new_addslashes()函数在global.func.php函数中定义了。
22三元运算,我们打开route.php文件,返回了一个二维数组,
其中下标为'default'',我们就直接取出default这个数组了,
但是为什么phpcms要做这个判断呢,其中SITE_URL在base.php中定义了
define('SITE_URL', (isset($_SERVER['HTTP_HOST']) ? $_SERVER['HTTP_HOST'] : ''));
本地测试是localhost,是不是为了检测自己定义的路由规则呢?暂时不能知道了。24-37目前为止都是未执行的,因为$this->route_config其实是一个一维数组。
你
print_r($this->route_config) Array( [m] => content [c] => index [a] => init)
所以这个构造函数,只存在了个变量
$this->route_config
这3个函数就比较简单返回Array([m]=>content[c]=>index[a]=>init)里面的数据OK,我们返回application.class.php
$this->init();
26行,直接调用了load_controller,我们直接看load_controller函数第44行
load_controller($filename='',$m='')
上面的init并没有传参,而且在构造函数中我们已经取出了ROUTR_C,ROUTE_M的值
那么此时的$filename=index$m=content
所以47-63行的代码意思为
判断这个模块下的这个文件是否存在,存在就加载,同样判断了有没有以MY_开头的自己的扩展,有的话也加载,并实例化
如果没有就
exit('Controller does not exist.');
回到init函数,此时已经加载了控制器,并实例化了index.phpinit()这个函数,主要注意的就是俩个函数method_exists()和call_user_func()不明白的同学,看手册吧,这个
call_user_func(array($controller,ROUTE_A))
直接就执行了index.php里面的init方法好了,application.class.php函数就说到这吧,如果一篇写太多,朋友们看的时候会头大。
下一章,我们进去content模块下的index.php控制器的init方法
本文标签:
很赞哦! ()
上一篇:phpcms做网站
图文教程
phpcms可以做商城吗
可以,但是它不是专业的商城系统,即没有现成的模块去使用直接做商城,要做适当的二次开发。它有支付模块和自定义数据模型,支持自己开发模块。二次开发起来个人感觉比较方便。
PHPCMS文章数据存放的是哪个表
PHPCMS文章附加数据存在“phpcms_c_news”表里,主要内容数据存在“phpcms_content”表中,“phpcms_content”中的数据是所有内容数据,查询文章数据时只需查询
phpcms内容附件调用和添加远程地址的调用方法
1,CSS路径有{CSS_PATH}2,图片路径有{IMG_PATH}3,JS路径有{JS_PATH}4,那么附件的路径如何调用,使用下面的方式可以得到附件的路径前缀(即域名+上传文件夹地址)
PHPCMS源码构造分析
pc_base::creat_app()主要工作就是把application这个类初始化。application类的初始化到底干了些什么呢,我们研究一下。
相关源码
-
(自适应)变压器电子元器件电器配件pbootcms网站模板源码为电子元器件企业打造的响应式网站模板,基于PbootCMS内核开发,助力企业快速构建专业级线上展示平台。支持页面独立设置标题、关键词和描述,内置SEO友好结构。PHP程序确保运行安全稳定,有助于提升搜索引擎收录效果。查看源码 -
(自适应)游泳馆泳池水处理器设备pbootcms网站模板免费下载专注服务于泳池水处理设备制造商、泳池系统工程商等企业用户。模板预设设备分类体系、技术参数展示模块和解决方案呈现页面,满足行业特有展示需求。查看源码 -
(PC+WAP)绿色草坪地坪操场pbootcms网站模板该模板基于PbootCMS内核开发,专为人造草坪、地坪施工企业设计,采用绿色主题呼应行业属性,实现PC与WAP端全栈响应式适配,确保跨设备无缝浏览体验。查看源码 -
(PC+WAP)蓝色电子半导体电子设备网站pbootcms源码下载本模板基于PbootCMS内核开发,为半导体和电子科技行业设计,特别适合电子元器件、集成电路、半导体设备及相关技术产品展示。查看源码 -
(自适应)刷卡pos机数据移动支付设备电子科技pbootcms模板下载本模板为POS机设备制造商、移动支付终端服务商和科技企业设计,基于PbootCMS系统开发,提供完整的在线展示平台解决方案,满足支付设备行业特有的展示需求。查看源码 -
(自适应响应式)HTML5建筑工程公司建筑集团网站模板下载基于PbootCMS内核开发的响应式建筑行业网站模板,为建筑工程公司、建筑集团等企业打造,通过简洁大气的设计风格展现企业专业形象。查看源码
| 分享笔记 (共有 篇笔记) |
