位置: 编程技术 - 正文

thinkPHP5.0框架整体架构总览【应用,模块,MVC,驱动,行为,命名空间等】(thinkphp5框架介绍)

编辑:rootadmin

推荐整理分享thinkPHP5.0框架整体架构总览【应用,模块,MVC,驱动,行为,命名空间等】(thinkphp5框架介绍),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:thinkphp框架结构,thinkphp框架作用,thinkphp框架入门,thinkphp框架介绍,thinkphp3.2框架,thinkphp3.2框架,thinkphp框架结构,thinkphp框架怎么用,内容如对您有帮助,希望把文章链接给更多的朋友!

本文讲述了thinkPHP5.0框架整体架构。分享给大家供大家参考,具体如下:

ThinkPHP5.0应用基于MVC(模型-视图-控制器)的方式来组织。

MVC是一个设计模式,它强制性的使应用程序的输入、处理和输出分开。使用MVC应用程序被分成三个核心部件:模型(M)、视图(V)、控制器(C),它们各自处理自己的任务。

5.0的URL访问受路由决定,如果关闭路由或者没有匹配路由的情况下,则是基于:

thinkApp类完成,应用通常在入口文件中被调用和执行,具有相同的应用目录(APP_PATH)的应用我们认为是同一个应用,但一个应用可能存在多个入口文件。

应用具有自己独立的配置文件、公共(函数)文件。

模块

一个典型的应用是由多个模块组成的,这些模块通常都是应用目录下面的一个子目录,每个模块都自己独立的配置文件、公共文件和类库文件。

5.0支持单一模块架构设计,如果你的应用下面只有一个模块,那么这个模块的子目录可以省略,并且在应用配置文件中修改:

控制器

每个模块拥有独立的MVC类库及配置文件,一个模块下面有多个控制器负责响应请求,而每个控制器其实就是一个独立的控制器类。

控制器主要负责请求的接收,并调用相关的模型处理,并最终通过视图输出。严格来说,控制器不应该过多的介入业务逻辑处理。

事实上,5.0中控制器是可以被跳过的,通过路由我们可以直接把请求调度到某个模型或者其他的类进行处理。

5.0的控制器类比较灵活,可以无需继承任何基础类库。

一个典型的Index控制器类如下:

操作

一个控制器包含多个操作(方法),操作方法是一个URL访问的最小单元。

下面是一个典型的Index控制器的操作方法定义,包含了两个操作方法:

thinkPHP5.0框架整体架构总览【应用,模块,MVC,驱动,行为,命名空间等】(thinkphp5框架介绍)

操作方法可以不使用任何参数,如果定义了一个非可选参数,则该参数必须通过用户请求传入,如果是URL请求,则通常是$_GET或者$_POST方式传入。

模型

模型类通常完成实际的业务逻辑和数据封装,并返回和格式无关的数据。

模型类并不一定要访问数据库,而且在5.0的架构设计中,只有进行实际的数据库查询操作的时候,才会进行数据库的连接,是真正的惰性连接。

ThinkPHP的模型层支持多层设计,你可以对模型层进行更细化的设计和分工,例如把模型层分为逻辑层/服务层/事件层等等。

视图

控制器调用模型类后返回的数据通过视图组装成不同格式的输出。视图根据不同的需求,来决定调用模板引擎进行内容解析后输出还是直接输出。

视图通常会有一系列的模板文件对应不同的控制器和操作方法,并且支持动态设置模板目录。

驱动

系统很多的组件都采用驱动式设计,从而可以更灵活的扩展,驱动类的位置默认是放入核心类库目录下面,也可以重新定义驱动类库的命名空间而改变驱动的文件位置。

行为

行为(Behavior)是在预先定义好的一个应用位置执行的一些操作。类似于AOP编程中的“切面”的概念,给某一个切面绑定相关行为就成了一种类AOP编程的思想。所以,行为通常是和某个位置相关,行为的执行时间依赖于绑定到了哪个位置上。

要执行行为,首先要在应用程序中进行行为侦听,例如:

然后对某个位置进行行为绑定:

一个位置上如果绑定了多个行为的,按照绑定的顺序依次执行,除非遇到中断。

命名空间

ThinkPHP5采用了PHP的命名空间进行类库文件的设计和规划,并且符合PSR-4的自动加载规范。

更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》、《smarty模板入门基础教程》及《PHP模板技术总结》。

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

PHP实现留言板功能的详细代码 本文实例为大家分享了php留言板的实现思路,供大家参考,具体内容如下1.创建一个存放留言信息的文件名2.获取表单中的数据给一个变量3.判断文件的

php实现微信扫码支付 代码中包含四个文件createUrl.php、ArrayToXML.php、returnGoodsUrl.php、notifyUrl.php。createUrl.php:创建微信二维码支付链接php/***@authorchantrans*本页面的作用是生成商

php传值方式和ajax的验证功能 PHP前台传值到后台进行验证的3种方式1.不外乎就是post,get和ajax方式post和get方式就是在表单上用method方式规定主要就是ajax动态传值进行后台验证2.ajax动态

标签: thinkphp5框架介绍

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

上一篇:thinkPHP5.0框架开发规范简介(thinkphp框架作用)

下一篇:PHP实现留言板功能的详细代码(php实现留言板功能)

  • 应纳税所得额是利润总额吗
  • 关税税收优惠记忆口诀
  • 先包装后销售先销售后包装的消费税处理
  • 现在会计账簿还需要交印花税吗
  • 银行代扣的社保怎么查询
  • 申报个人所得税会计分录
  • 工业企业总产值的计算是以什么为主体
  • 养老失业工伤单位一般缴纳多少钱
  • 职工暖气费报销算福利
  • 工会经费滞纳金是多少
  • 境外增值税代扣代缴
  • 小规模收到货运专用发票
  • 小规模纳税人申报表2023年怎么填写
  • 实收资本印花税最新规定
  • 计提递延所得税费用会计分录
  • 以公司名义投资好还是以个人名义投资好
  • 同期对比和同比增长
  • 预收贷款是什么会计科目
  • 收到财政补贴收入贷记科目是
  • 新版edge浏览器文字不显示
  • 政府收储土地补偿款账务处理
  • 企业收到工程款会计分录
  • 母公司向子公司注入资产
  • 远期结汇账务处理办法
  • kindle屏幕黑斑
  • php语句和php变量都是区分大小写的
  • 冈山平原
  • lean in桑德伯格
  • 微信小程序自定义函数
  • 企业销售折扣在计征所得税时如何处理
  • php正则表达式匹配字符串
  • st的电机库性能怎么样呢
  • 文化体育用品批发城有哪些
  • nvm 安装node
  • php array_slice 取出数组中的一段序列实例
  • java 桥接模式
  • 打印空白表格怎么制作
  • 城镇土地使用税优惠政策
  • 利润表中其他收益是什么
  • 包工的人工费可以算工程款
  • 公章盖错在旁边加盖正确的说明
  • 股本和库存股有什么区别
  • 给客户维修设备更换配件怎么开票
  • SQL Server 2005 Management Studio Express企业管理器将英文变成简体中文版的实现方法
  • 织梦一直显示上一页和下一页
  • 海关进口增值税专用缴款书稽核比对可能出现哪些结果
  • 附加税扣款时做成了借税金及附加怎么办
  • 长期股权投资资本公积增加记哪个会计科目
  • 没有发票的费用支出怎么入账
  • 个税更改公司怎么操作
  • 权责发生制是根据发票入账吗
  • 建筑行业旧项目怎么处理
  • 业务招待费占管理费用的多少算合适
  • 一般纳税人公司注册资金最低多少
  • 工地水包水
  • 准予抵扣销项税额
  • 印花税怎么申报缴纳
  • 固定资产领用原因
  • 资产减值准则规范
  • 金税盘发票全额抵扣如何做账
  • 客运运价杂费收据填写例题
  • 本年利润的会计分录
  • sqlsever导入数据时出现ole db连接数据无效
  • ubuntu gz
  • Windows Server 2016怎么安装?Windows Server 2016安装、激活、设置详细图文教程
  • yum命令作用
  • 与web站点和web页面
  • win8.1网络设置
  • WIN7系统屏幕亮度哪里设置
  • windows 8开机
  • 帝国cms列表页隐藏部分文章
  • 设计模式三种
  • python中用input()函数接收到的数据为
  • javascript基于什么的语言
  • node js并发加载缓慢
  • jquery设置禁用
  • jquery轮播图自动播放
  • 国家税务处处长
  • 百望税控盘电子发票怎么打
  • 天津2020年契税征收标准
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设