ThinkPHP基础知识(一)

TP是一个很好用,很好学的php框架,拥有了它,你开发的效率会挺高很多。

你可以在ThinkPHP官网上下载最新的版本,现在是ThinkPHP5,然而我现在学的是3.2.3,不过没关系,知识应该都差不多吧。

下载完了之后,打开你可以看到这些文件:

在你的php开发环境里创建一个文件APP,(我用的是wampserver64的集成环境,也可以是phpstudy,)把上面文件复制进去。

在网站上输入:http://localhost/APP/index.php,如果显示下方这样,那你的tp就安装成功了。

当你安装成功后,你是不是就开始懵逼那些项目文件是什么意思了?别急,现在我就来说这个了。

Application ------应用目录

Public ------资源文件目录

ThinkPHP ------框架目录

.htaccess ------Apache配置文件

compose.json------Composer配置文件

index.php ------入口文件

README.md-----Readme文件


Home模块:(前台)

Common:模块函数公共目录(一些公共的文件,css,js等等)

Conf:模块配置文件目录

Controller:模块控制器目录(MVC中的C,里面放着一些类、方法,可以理解为漂亮跑车的引擎)

Model:模块模型目录(MVC中的M,用于存储数据的组件,可以理解为漂亮跑车的基本外壳、方向盘等等)

View:模块视图文件目录(MVC中的C,视图界面,可以理解为汽车漂亮的各种装饰,外观好看等等)

index.html:目录安全文件(避免直接可以在浏览器输入URL地址就可以查看目录,起到安全保护目录的作用)


Admin模块(后台):同上类似

这文件目录里边还有一些文件,具体的我就不细细说了,你可以看开发文档哦,那里有详细的解释:

那ThinkPHP是怎么工作的呢?

ThinkPHP系统流程如下:

1、用户URL请求:在浏览器输入网址

2、调用应用入口文件:就是根目录下的index.php

3、载入框架入口文件:就是ThinkPHP.php,路径是APP/ThinkPHP/ThinkPHP.php

4、加载ThinkPHP框架内部:具体加载内容可参看开发文档手册

5、获取请求的模块信息

6、获取当前控制器和操作,以及URL参数

7、根据请求执行控制器方法

8、如果控制器中调用display或者show方法,则说明有模板渲染

9、获取模板内容

10、自动识别当前主题状态以及定位模板文件

当你在浏览器中输入:“http://localhost/APP/index.php/Home/Index/index”,系统获取到请求的模板是Home,当前控制器是Index,控制方法是index,然后会执行这个方法,如果有模板渲染的话,就获取模板内容。

更多内容,期待下期!

(原文写于2017.8.5)

原文发布于微信公众号 - 程序员的碎碎念(gh_53e607dd4782)

原文发表时间:2017-08-25

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Jacklin攻城狮

为Next主题添加多说评论系统

几个月前,在好奇心的鼓动下,利用Github Pages和Hexo以及Next主题搭建一个属于自己的个人主站,由于时间伧俗,搭建成功后就没有好好完善一下,可以参...

914
来自专栏源码之家

DedeCMS采集文章的审核时间同步文章发布时间

1492
来自专栏优启梦

文章内的新浪短网址https无法访问解决办法!

大家都知道最近新浪短网址出问题了! 以前蓝奏云、文章分享出来的地址都是https://t.cn的 导致丢失好多量! 一个一个修改太麻烦了,我们只能暂时将 htt...

3957
来自专栏哲学驱动设计

版本分支管理标准

1832
来自专栏wblearn

我的Github之Pull request的使用

GitHub已经成为的一切开放源码软件的基石。开发人员喜欢它,基于它进行协作,并不断通过它开发令人惊叹的项目。除了​​代码托管,GitHub的主要吸引力是使用它...

1052
来自专栏BeJavaGod

使用百度UMeditor富文本编辑器,修改自定义图片上传,修改源码

富文本编辑器,不多说了,这个大家应该都用到过,至于用到的什么版本,那就分很多种 CKEditor:很早以前叫FCK,那个时候也用过,现在改名了,比较流行的一个插...

3424
来自专栏酷玩时刻

IDE中显示 *.properties 为中文

之前做过几个开源项目(极速开发微信公众号weixin_guide以及IJPay 让支付触手可及),Demo中有涉及到一些配置文件。有些同学下载了之后反馈说有乱码...

682
来自专栏王磊的博客

二维码的生成(可设置大小)以及插件下载地址

本文写的二维码生成是基于jQuery和jquery.qrcode.min.js插件的,本文将介绍两种方法和方式,仅供朋友选择和取舍。本文最下面附有插件的下载地...

33911
来自专栏沈唁志

怎么使用WordPress小工具添加新浪微博秀、一键关注等按钮

怎么使用WordPress小工具添加新浪微博秀、一键关注等按钮?其实这个也不算什么稀奇了,就是直接使用新浪微博的微博组件

251
来自专栏IT大咖说

R语言实例:利用css对shiny页面优化及htmlwidgets创建控件

摘要 本演讲将介绍如何利用CSS对shiny页面进行个性化设计及在网页中嵌入视频;并通过一个详细案例介绍了利用htmlwidgets包开发HTML控件,基于D3...

2686

扫描关注云+社区