
本文的重点是详细介绍DEdedecmsV5.7模块的MVC框架,详细分析DEECMSV5.7的MVC框架结构以及实体模型和类的基本激活方法。对DEECMS的二次开发有很好的参考价值,一定要朋友们参考。
本文详细分析了DedeCMSV5.7模块的MVC框架结构。分享给大家参考。深入分析以下内容:
DreamweavercmsMVC开发框架是一个简化的迷你web开发框架。有了这个开发框架,我们可以根据Dreamweavercms内容智能管理系统编写扩展功能、模块(插件),甚至可以提取出来开发设计博客、BBS、SNS等。
文件目录结构显示:
复制代码如下:|_app
|__控制控制器(c)
|__模型实体模型(m)
。___库类库
|__数据配备
|__数据\助手助手
|__静态样式、js、照片文件夹名称
|__index.php统一录入文档[/br/CT=index&;Ac=savect=index:控制器条目,它与文件目录控件中的index.php相匹配。
如果RunApp()指定了第三个主参数,比如问答中的RunApp($ct,$ac,'admin'),则表示ct=index:controllerentrance,与文件目录control/admin中的index.php相匹配。
Ac=save:实际 *** 作与文档index.php的类索引中的函数ac_save()相匹配。
在控制器中,与功能相关的实际 *** 作存储在文件中,如留言板,可应用于:
?留言簿。Ac={do}统一进行,也便于静态数据部署。
1。控制器开发和设计指示(控制):
基本代码结构:
复制代码如下:classyourCTnameextendscontrol
{
publicfunctionAC_save()
{
[/br/Controller可以选择并继承一个基类:control。这个类匹配的文件夹名是/include/control.class.php,还有一些基类的 *** 作说明。以下是一些常见的方法:
$control->;型号();
加载实体模型。例如,$this->在index.php问答模块中。question=$this->;模型('mquestion')是用mquestion加载的实体模型。然后可以通过$this->:Question来启用实体模型的相对实际 *** 作。完成数据信息的插入,升级这些实际 *** 作。启用类的名称可以随意定义,但要确保不矛盾。实体的文档放在模型文件目录中。
$control->;库();
加载一个类。有时候,当我们需要一个系统软件中没有的类时,可以按照这种方式加载一个自己的类。实际方式与物理模型相同。类放在库文件目录中。
$control->;helper();
加载一个助手,导入助手,帮助你存储和管理必须使用的功能。实际方式与实体模型相同。助手放置在data\helper文件目录中。
复制下面的代码:$control->;settemplate();
$control->;SetTemplet();//设置必须针对今天实际 *** 作的模板;
//PHPfensi.com
$control->;SetVar($k,$v);//设置模板必须分析的自变量,在模板中应用{dede:var.name/}将其启用。
GLOBALS['k']=$k;
在模板中设置必要的自变量,可以通过模板中的方法立即输出。大部分问答模块都是用那种方式输出的。这种方法更适合解决一些复杂的数据信息,比如数组。
复制代码如下:$control->;GetVar($k);//获取设置的模板参数
$control->;显示();//显示信息模板的分析内容
$control->;SaveTo();//将内容存储在文档中
实际 *** 作控制器关于模板的应用可以查看DedeTemplate引擎,实际查看企业内部开发文本中模板所指示的相关章节目录。
实体模型的开发设计表明(model):
复制代码如下:classmtype扩展Model
{
publicfunctionget_one()
{
控制器可以选择继承一个基类:Model,该类匹配的文件夹名为/include/model.class.php,带有数据库查询类的 *** 作指南。这里只有一条路:
$model->;dsql();
实例化数据库 *** 作类,以及数据库查询类在实体模型中的应用。实际 *** 作中可以查看数据库查询类的说明书。
模板徽标的激活表示:
如果在控制器中按$control->:SetVar($k,$v);此方法设置的主要参数根据标记为{dede:var.name/}的方法启用。
如果在控制器中显示GLOBALS['k']=$k;这种方法设置的主参数可以根据标记为{dede:global.name/}的方法启用,也可以由php立即输出。
希望以上内容对dedecms的二次开发有所帮助。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)