您现在的位置是:首页 > cms教程 > phpcms教程phpcms教程
phpcmsV9二次开发简明手册
芷蕾2025-05-21phpcms教程已有人查阅
导读现在我们总结MVC的处理过程,首先控制器接收用户的请求,并决定应该调用哪个模型来进行处理,然后模型用业务逻辑来处理用户的请求并返回数据,之后控制器用相应的视图格式化模型返
现在我们总结MVC的处理过程,首先控制器接收用户的请求,并决定应该调用哪个模型来进行处理,然后模型用业务逻辑来处理用户的请求并返回数据,之后控制器用相应的视图格式化模型返回的数据,并通过表示层呈现给用户。URL访问
URL参数说明
参数
描述
位置
备注
m
模块目录名
phpcms/modules中模块目录名称
必须
c
控制器名称
phpcms/modules/模块/*.php文件名称(与此文件中的类名称相同)
必须
a
事件名称
phpcms/modules/模块/*.php中的方法名称
默认为init
系统类库与函数库调用
1. 系统类库位于系统的phpcms/libs/classes目录下面,类库文件名为*.class.php
2. 系统函数库位于系统的phpcms/libs/functions目录下面,函数库文件名为*.func.php,其中global.func.php为框架中默认加载,global.func.php中函数可直接使用
系统类库调用
pc_base::load_sys_func('函数库名称');命名规范
1.类文件需要以.class.php为后缀(这里是指的phpcms的系统类库文件和模块中的类库文件,第三方引入的不做要求),例如http.class.php。
2.函数文件需要以.func.php为后缀(第三方引入的不做要求),例如mail.func.php。
3.类名和文件名一致,例如 phpcmsapp类的文件命名是phpcmsapp.class.php。
4.数据模型需要以“数据表名称_model.class.php”为形式,类名称与文件名必须相同。配置文件调用
要注意的是,不需要在二次开发的版本中手动载入你扩展的原文件,PHPCMS框架会自动载入的。创建模块开发流程
为你的phpcms创建一个模块的一般开发流程是:
1. 创建数据库和数据表(没有数据库操作可略过);
2. 创建模块目录(位于 phpcms/modules/ 目录中,可以通过 index.php?m=模块文件夹名 来访问);
3. 创建模块控制器类(通过 index.php?m=模块文件夹名&c=控制器名 来访问控制器类中的init方法,可以通过指定a参数来指定要访问的类方法)、模块类库包(位于phpcms/modules/模块名/classes / 目录下,在控制器类中用 $var = pc_base :: load_app_class('类库名'); 载入)和模块函数库包(位于phpcms/modules/模块名/functions / 目录下,在控制器类中用pc_base :: load_app_func('函数库名'); 载入);
4. 创建模型类(位于 phpcms/model/模块名/ 目录中,并在控制器类中使用 $this->db =pc_base::load_model('模型类名'); 来加载。如果只是简单的模块可以不必创建);
5. 创建模板文件(后台模板放在 phpcms/modules/模块名/templates/ 目录下,前台模板放在phpcms/templates/default/模块名/ 目录下);
6. 运行和调试。
URL参数说明
参数
描述
位置
备注
m
模块目录名
phpcms/modules中模块目录名称
必须
c
控制器名称
phpcms/modules/模块/*.php文件名称(与此文件中的类名称相同)
必须
a
事件名称
phpcms/modules/模块/*.php中的方法名称
默认为init
系统类库与函数库调用
1. 系统类库位于系统的phpcms/libs/classes目录下面,类库文件名为*.class.php
2. 系统函数库位于系统的phpcms/libs/functions目录下面,函数库文件名为*.func.php,其中global.func.php为框架中默认加载,global.func.php中函数可直接使用
系统类库调用
$http = pc_base::load_sys_class('http'); //实例化http类
pc_base::load_sys_class('format', '', 0); //调用form类,不进行实例化操作
注解:
pc_base::load_sys_class(
'类库名',
'类库所处文件夹(相对于网站根目录,默认为: libs/classes)',
是否(1/0)实例化并返回实例
);
系统函数库调用
pc_base::load_sys_func('mail'); //调用mail函数包,即载入mail.func.php文件
注解:pc_base::load_sys_func('函数库名称');命名规范
1.类文件需要以.class.php为后缀(这里是指的phpcms的系统类库文件和模块中的类库文件,第三方引入的不做要求),例如http.class.php。
2.函数文件需要以.func.php为后缀(第三方引入的不做要求),例如mail.func.php。
3.类名和文件名一致,例如 phpcmsapp类的文件命名是phpcmsapp.class.php。
4.数据模型需要以“数据表名称_model.class.php”为形式,类名称与文件名必须相同。配置文件调用
$upload_url = pc_base::load_config('system','upload_url'); //返回caches/configs/system.php文件中数组的关键字为upload_url的值
注解:
pc_base::load_config(
'配置文件的文件名',
'指定关键字以便返回其对应的元素值,不指定则返回整个数组',
'默认值(默认为空)',
是否(1/0)强制重新加载,默认为false,即调用上次加载的结果
);
对已存在的控制器、类库进行二次开发在原文件的相同位置创建 MY_原文件名 的文件,其内容一般格式为:
<?php
defined('IN_PHPCMS') or exit('No permission resources.');
class MY_原文件中的类名称 extends原文件中的类名称{
function __construct() {
parent::__construct();
}
……your code
}
以上并不是通用格式,具体格式要参照着你要二次开发的原文件来书写。要注意的是,不需要在二次开发的版本中手动载入你扩展的原文件,PHPCMS框架会自动载入的。创建模块开发流程
为你的phpcms创建一个模块的一般开发流程是:
1. 创建数据库和数据表(没有数据库操作可略过);
2. 创建模块目录(位于 phpcms/modules/ 目录中,可以通过 index.php?m=模块文件夹名 来访问);
3. 创建模块控制器类(通过 index.php?m=模块文件夹名&c=控制器名 来访问控制器类中的init方法,可以通过指定a参数来指定要访问的类方法)、模块类库包(位于phpcms/modules/模块名/classes / 目录下,在控制器类中用 $var = pc_base :: load_app_class('类库名'); 载入)和模块函数库包(位于phpcms/modules/模块名/functions / 目录下,在控制器类中用pc_base :: load_app_func('函数库名'); 载入);
4. 创建模型类(位于 phpcms/model/模块名/ 目录中,并在控制器类中使用 $this->db =pc_base::load_model('模型类名'); 来加载。如果只是简单的模块可以不必创建);
5. 创建模板文件(后台模板放在 phpcms/modules/模块名/templates/ 目录下,前台模板放在phpcms/templates/default/模块名/ 目录下);
6. 运行和调试。
本文标签:
很赞哦! ()
相关教程
图文教程
phpcmsv9附件下载出现参数错误的解决方法
phpcms v9附件下载出现参数错误的解决办法:首先找到并打开“down.php”文件;然后删除文件中“patch IP”的部分代码;接着上传覆盖,并更新缓存;最后重新点击下载即可。
phpcms上传图片提示服务器安全认证错误的原因和解决方法
原因:这个问题一般都是由于域名变化upload_url或者app_path等变量值错误的问题。找到“/caches/configs/system.php”,将里面之前本地路径的参数修改为新的域名,比如:
phpcmsv9栏目页静态化生成实现方法
一、phpcms-v9中栏目页的静态化生成在phpcms/modules/content/create_html.php控制器中的category()方法
phpcms中phpsso有什么用?
SSO英文全称Single Sign On,单点登录。SSO解决的问题是在多个不同的应用系统中,用户只需要登录一次就可以访问所有通信的应用系统。
相关源码
-
帝国cms7.5自适应作文新闻资讯教育网站模板本模板基于帝国CMS7.5内核开发,为教育机构、培训学校等知识传播单位打造。通过自适应设计确保在手机、平板、电脑等设备上均能获得专业浏览体验查看源码 -
帝国cms大气淘宝客网站源码带手机版带火车头采集本款创意礼物导购网站模板为礼物类电商平台设计,采用清爽简约的界面风格,具备完善的商品导购功能。系统支持在文章攻略中灵活插入商品购买链接,实现内容与电商的结合。查看源码 -
pbootcms模板(PC+WAP)火锅加盟餐饮美食类带留言源码基于PbootCMS内核深度开发,为火锅、餐饮品牌打造的营销型解决方案。采用红色主题传递行业活力,实现PC与WAP端适配。查看源码 -
WordPress主题模板主题巴巴/博客X主题源码免费下载博客X主题专注于内容创作领域,为博客、资讯类网站提供专业的内容展示解决方案。该模板采用精心设计的布局结构,能够有效提升内容的可读性和用户停留时间。查看源码 -
(响应式)企业管理人力资源服务类pbootcms模板源码下载为人力资源服务及企业管理设计的响应式网站模板,基于PbootCMS内核开发。通过宽屏布局优化岗位展示效果,简洁界面聚焦人才服务核心业务,自适应技术确保在PC端与手机端查看源码 -
(PC+WAP)绿色草坪地坪操场pbootcms网站模板该模板基于PbootCMS内核开发,专为人造草坪、地坪施工企业设计,采用绿色主题呼应行业属性,实现PC与WAP端全栈响应式适配,确保跨设备无缝浏览体验。查看源码
| 分享笔记 (共有 篇笔记) |
