位置: 编程技术 - 正文

thinkphp多层MVC用法分析(thinkphp多模块)

编辑:rootadmin

推荐整理分享thinkphp多层MVC用法分析(thinkphp多模块),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:thinkphp多模块,基于thinkphp的cms,mvc thinkphp,thinkphp多模块,thinkphp多应用,thinkphp service层,thinkphp dao层,thinkphp多模块,内容如对您有帮助,希望把文章链接给更多的朋友!

本文实例讲述了thinkphp多层MVC用法。分享给大家供大家参考,具体如下:

ThinkPHP支持多层设计。

1.模型层Model

使用多层目录结构和命名规范来设计多层的model,例如在项目设计中如果需要区分数据层,逻辑层,服务层等不同的模型层可以在模块目录下创建Model,Logic,Service目录,把对用户表的所有模型操作分成3层。

1.Model/UserModel用于定义数据相关的自动验证,自动完成和数据存取接口

2.Logic/UserLogical用于定义用户相关的业务逻辑

3.Service/UserService用于定于用户相关的服务接口

这三个模型都继承Model类即可例如数据层Home/Model/UserModel.class.php

逻辑层Home/Logic/UserLogical.class.php

服务层Home/Service/UserService.class.php

在调用的时候可以使用内置的D方法或M方法经行调用

调用默认的模型层Model下的数据存取接口类的时候没有第二个参数模型文件名称,默认的模型层是Model,也可以更改设置如下:这样的话实例化方法就需要相应的修改了

thinkphp多层MVC用法分析(thinkphp多模块)

可以看到使用D('User')默认情况下会去实例化UserLogice类了,这个是很灵活的,如果我们数据验证,自动完成是在js里面完成的,而取数据是从service接口中完成的,这样完全可以只要一个Service层,其他的层就不需要了。

2.视图层View

视图层由模板和模板引擎组成,常见的第三方模板是.tpl,可以直接在模板中使用php代码,视图的多层可以简单的使用目录(模板主题)来区分,例如:

View/default/User/add.htmlView/blue/User/add.html

复杂一点的多层视图还可以使用不同的视图目录来区分例如:

view 普通视图层目录mobile 手机端访问视图层目录

这样不同的模板可以使用不同的页面风格,还可以默认视图目录,如下:

3.控制器层Controller

ThinkPHP的控制器有两种类别,一种是核心控制器,一种是业务控制器,核心控制器在ThinkPHP目录下,例如thinkphpThinkPHPLibraryThinkControllerHproseController.class.php,负责应用的调度控制,包括Http请求的拦截,转发,加载配置等。我们这里要讨论的是业务控制器,由用户自己定义的控制器类完成,多层业务控制器的实现原理和模型的分层类似,例如业务控制器和事件控制器,

事件这个还没有用过,看上去很高上大,web开发中的用户事件很少,大多数在js中完成。

访问控制器Home/Controller/UserController.class.php定义如下:

事件控制器Home/Event/UserEvent.class.php的定义如下:

UserContrlller负责外部交互响应,通过URL请求响应,例如

开启PHP的伪静态模式 一直在做php的开发工作.在开发的过程中老早就听说了伪静态这一说。但是一直没有对其进行了解。今天通过本篇文章仔细学习下。首先,什么是伪静态

详解Window7 下开发php扩展 一、首先查看phpinfo()信息PHPVersion5.4.ZendExtensionBuildAPI,TS,VC9PHPExtensionBuildAPI,TS,VC9ThreadSafetyenable线程安全,VC9编译,5.4.版本二、开发前准备

WordPress特定文章对搜索引擎隐藏或只允许搜索引擎查看 对搜索引擎隐藏特定的文章这个问题的来源是这样的:众所周知,随着搜索引擎的改良,会越来越排斥采集和伪原创,尤其是百度还推出了起源算法,

标签: thinkphp多模块

本文链接地址:https://www.jiuchutong.com/biancheng/284319.html 转载请保留说明!

上一篇:thinkphp命名空间用法实例详解(thinkphp use命名空间)

下一篇:开启PHP的伪静态模式(php伪静态规则写法)

  • 缴纳增值税做账
  • 固定资产计提折旧计入什么科目
  • 建筑业无票支出
  • 税款的汇兑损益如何做账
  • 咨询服务费开票税率
  • 所得税不计提直接缴纳,年末一次性计提
  • 对公走账是什么意思
  • 小企业会计准则以前年度损益调整
  • 有限合伙企业转让投资股权
  • 员工个人无息借款违法吗
  • 固定资产超过注册资金怎么处理
  • 去年增值税销项少2元
  • 劳务公司民工工资可以抵进项吗
  • 失控发票进项税额转出申报表填写
  • 已认证已抵扣的发票对方要寄回吗
  • 项目部管理人员及作业人员的
  • 个人住房房产税查询
  • 3万免税是指什么
  • 对公账户转法人私人账户用途写什么
  • 无形资产软件摊销年限的最新规定2021
  • 小规模购买财务软件怎么做分录
  • 股权转让企业所得税如何申报
  • 财务中不能冲销的凭证
  • 已开发票做账联放哪里
  • 公司变更税务处理?
  • 企业买的商业保险退款怎么做账
  • 外贸企业内销与外销对比
  • 新成立的有限公司
  • 电子税务局发送短信异常是怎么回事
  • 支付宝国际驾照有效期是多久
  • 平均净资产和净资产
  • 应付工资薪酬期末应该为0吗
  • kjournald是什么进程
  • php生成验证码的方法
  • 收到投资分红怎么做账务处理?
  • 分期收款销售商品,收到本期货款50万元
  • 日本长野县在哪
  • 基于stm32的小游戏
  • 【深度学习】AI一键换天
  • 税费滞纳金计入增值税吗
  • 购买银行承兑汇票怎么做账
  • 社保缴费基数是怎么确定的
  • 应交税费中印花税是什么
  • 测验3: 基本数据类型 (第3周)
  • phpcms模板制作教程
  • mysql存储过程之错误处理
  • 数组和结构体
  • 个税赡养老人分摊方式怎么更改
  • sql server如何查看本地的登录名和密码
  • 固定资产清理残料收入
  • mysql导出用户和权限
  • 小规模纳税人销售不动产适用税率
  • 软件开发企业怎么结转成本
  • 行政单位应缴财政税金
  • 营销策划服务费属于什么服务
  • 餐饮食材成本高怎么形容
  • 滴滴出行怎么开纸质发票
  • sqlserver增删改查执行语句
  • 防止黑客入侵的有效做法
  • mac设置多个桌面
  • Win8系统筛选器Smartscreen阻止恶意程序运行
  • mac上怎么查看qq聊天记录
  • DxDebugService.exe是什么进程 DxDebugService进程安全吗
  • eve是什么文件
  • Win10系统如何利用360压缩软件解决打不开RAR压缩包的问题
  • linux中ftp命令的用法
  • 如何用python处理pdf
  • 微信小程序实现轮播图
  • 用dos命令创建用户
  • unity方法大全
  • jquery 上传进度
  • shell 单引号中引用变量
  • jquery自动点击按钮
  • jquery 扩展事件
  • 在python程序中变量名不能用
  • 辽宁省国家税务局网上申报
  • 国税发票打印汇总怎么弄
  • 先征后返的增值税计入哪个科目
  • 进口车区别
  • 12366是哪里的税务局
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设