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 条评论
登录 后参与评论

相关文章

来自专栏互联网软件技术

wangEditor-基于javascript和css开发的 Web富文本编辑器, 轻量、简洁、易用、开源免费(2)

1354
来自专栏Jed的技术阶梯

Linux集群系统时间同步

要做到服务器集群的时间同步,集群中各台机器的时区必须相同的,我们在国内就使用中国时区,如果你的机器的时区不是"Asia/Shanghai",需要修改时区

6754
来自专栏iOSer成长记录

Mac下使用OpenGL——配置glew/glut/glfw3/gltools环境

1916
来自专栏Java后端技术

GitLab配置ssh key

  当前很多公司都选择git作为代码版本控制工具,然后自己公司搭建私有的gitlab来管理代码,我们在clone代码的时候可以选择http协议,当然我们亦可以选...

1013
来自专栏乐沙弥的世界

快速安装及部署DRBD

821
来自专栏技术博客

MVC项目开发中那些用到的知识点(js css优化-- 合并和压缩)

在项目框架中,首先要引用很多css和js文件,80%的用户响应时间都是浪费在前端。而这些时间主要又是因为下载图片、样式表、JavaScript脚本、flash等...

1622
来自专栏Crossin的编程教室

极简 Github 上手教程

随着你写的代码越来越多,就需要去管理这些代码,可能要在不同的电脑上编写同一份代码,可能要和别人合作开发,也可能想把项目分享给别人。更进一步地,你可能还会需要管理...

3017
来自专栏pythonlove

FTP使用MariaDB完成虚拟用户认证

文件传输协议(英文:File Transfer Protocol,縮寫:FTP)是用於在網絡上進行文件傳輸的一套標準協議。它属于网络传输协议的应用层。FTP是一...

1024
来自专栏大内老A

Visual Studio对程序集签名时一个很不好用的地方

由于我们的项目底层使用到一个通过LogicalCallContext实现的上下文数据管理框架,导致所有的Unit Test不能正常运行。具体的现象在《只在Uni...

1728
来自专栏Coding迪斯尼

java开发操作系统:一个程序向另一个程序伸出的咸猪手

1534

扫码关注云+社区