ThinkPHP5 基础知识入门 [入门必先了解]
2024-10-10 23:52:52
一、目录结构
下载最新版框架后,解压缩到web目录下面,可以看到初始的目录结构如下:
project 应用部署目录
├─application 应用目录(可设置)
│ ├─common 公共模块目录(可更改)
│ ├─index 模块目录(可更改)
│ │ ├─config.php 模块配置文件
│ │ ├─common.php 模块函数文件
│ │ ├─controller 控制器目录
│ │ ├─model 模型目录
│ │ ├─view 视图目录
│ │ └─ ... 更多类库目录
│ ├─command.php 命令行工具配置文件
│ ├─common.php 应用公共(函数)文件
│ ├─config.php 应用(公共)配置文件
│ ├─database.php 数据库配置文件
│ ├─tags.php 应用行为扩展定义文件
│ └─route.php 路由配置文件
├─extend 扩展类库目录(可定义)
├─public WEB 部署目录(对外访问目录)
│ ├─static 静态资源存放目录(css,js,image)
│ ├─index.php 应用入口文件
│ ├─router.php 快速测试文件
│ └─.htaccess 用于 apache 的重写
├─runtime 应用的运行时目录(可写,可设置)
├─vendor 第三方类库目录(Composer)
├─thinkphp 框架系统目录
│ ├─lang 语言包目录
│ ├─library 框架核心类库目录
│ │ ├─think Think 类库包目录
│ │ └─traits 系统 Traits 目录
│ ├─tpl 系统模板目录
│ ├─.htaccess 用于 apache 的重写
│ ├─.travis.yml CI 定义文件
│ ├─base.php 基础定义文件
│ ├─composer.json composer 定义文件
│ ├─console.php 控制台入口文件
│ ├─convention.php 惯例配置文件
│ ├─helper.php 助手函数文件(可选)
│ ├─LICENSE.txt 授权说明文件
│ ├─phpunit.xml 单元测试配置文件
│ ├─README.md README 文件
│ └─start.php 框架引导文件
├─build.php 自动生成定义文件(参考)
├─composer.json composer 定义文件
├─LICENSE.txt 授权说明文件
├─README.md README 文件
├─think 命令行入口文件
如果是mac或者linux环境,请确保runtime
目录有可写权限
public 目录作为 web 目录(即 www 目录)访问内容,其他文件都是在 web 目录之外,主要是为了保护文件不被外界通过链接访问
一些特定的目录都是可以调整设置的
二、框架架构
ThinkPHP5.0 基于 MVC 来组织代码的。
ps:MVC 是一个设计模式,它强制性的使应用程序的输入、处理和输出分开。
MVC 应用程序分为三个核心部件:模型(M)、视图(V)、控制器(C)
5.0 的 URL 访问受路由决定,如果关闭路由或者没有匹配路由的情况下,则是基于:
http://serverName/index.php(或者其它应用入口文件)/模块/控制器/操作/参数/值…
入口文件
用户请求的 PHP 文件,负责处理一个请求(不一定是 URL 请求)的生命周期,最常见的入口文件就是 index.php,有时候也会未来某些特殊的需求增加新的入口文件,例如给后台模块单独设置的一个入口文件 admin.php 或者一个控制器程序入口 think 都属于入口文件。
最新文章
- JavaScript对象属性(二)
- 用gulp建立自动工具,完成软件的编译、测试、打包和发布流程
- js 的点击事件
- shutil模块
- Javascript模块化开发-轻巧自制
- mysql 错误- 磁盘空间不足,
- Ubuntu Server 中resolv.conf重启时被覆盖的问题
- 三星 PMU NXE2000,x-powers的AXP228,NXE2000
- sizeof和strlen的区别和联系总结
- Bootstrap3 栅格系统-实例:从堆叠到水平排列
- win10安装tensorflow-gpu1.13.1+cuda10.0+cudnn7.3.1
- PHP反射原理的实现
- Linux常用总结
- 手把手教你Chrome浏览器安装Postman(含下载云盘链接)(转)
- PL/SQL第四章 where子语句
- Asp.Net Core MVC控制器和视图之间传值
- UVA-11882 Biggest Number (DFS+剪枝)
- 页面回到顶部的三种实现(锚标记,js)
- js常用的几个验证
- shiro使用框架,自定义过滤器
热门文章
- Mysql5.7 建表报 [Err] 1055 问题
- H3C 802.11网络的基本元素
- 原创:基于visual studio 2010 对话框程序的创建
- 基于springboot2.x集成缓存注解及设置过期时间
- 将照片转成base64时候,使用下面的这个包更加安全一些
- RobotFrameWork框架介绍与安装
- 八.python文件操作
- 三.Python变量,常量,注释
- 【转载】Visual Studio Code 构建 C/C++ 开发环境
- vue解决大文件断点续传