Blogger Information
Blog 128
fans 9
comment 5
visits 241340
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
5.)PHPWeb开发框架~laravel目录结构分析
 一纸荒凉* Armani
Original
1214 people have browsed it

(1)app目录-项目的核心目录

主要用于存放核心代码,也包括控制器、模型

比如控制器存放如下位置:app/Http/Controllers

模型文件存放位置,模型文件直接写在app目录下即可,但是也可以在该目录下建立其他目录用于专门存放模型文件,例如建立Admin目录专门存放后台需要的模型文件,建立Home目录存放前台模型文件目录:

(2)bootstrap目录-laravel启动目录

autoload.php文件用于自动载入需要的类文件。

(3)config目录-项目的配置目录

主要存放配置文件,比如数据库的配置

  • App.php:项目主要配置文件;

  • Auth.php:用于定义用户认证(登录)的配置文件;

  • Database.php:针对数据库的配置;

  • Filesystems.php:上传文件、文件存储需要使用到的配置文件;

(4)database目录-数据迁移目录

存储跟数据表相关的操作类文件(迁移文件【创建数据表的类文件】、种子文件【存放一些数据表的数据填充文件】)。

(5)public目录-入库文件目录

项目的入口文件和系统的静态资源目录(css,img,js,uploads)

后期使用的外部静态文件(js、css、图片等)都需要放到Public目录下

当然重点的是项目单一入口文件也在这个目录下。因此后续配置虚拟主机的时候需要将站点位置指定到public下。

(6)resources目录-存放视图文件

还有就是语言包文件的目录

Lang目录:语言包目录(如果项目需要本地化则需要配置语言包)

Views目录:视图文件存储目录(视图文件也可以分目录管理)

(7)routes目录-定义路由的目录

web.php是定义路由的文件

(8)storage目录-存放缓存文件和日志文件

注意,如果在linux环境下,该目录需要有可写权限。(后期用户上传文件如果存在本地则也在storage下)

  • App:存放的用户上传的文件

  • Framework:框架运行时的缓存文件

  • Logs:日志目录

(9)vendor目录-存放第三方的类库文件

laravel思想主要是共同的开发,不要重复的造轮子(例如,里面可能存在验证码类,上传类,邮件类),该目录还存放laravel框架的源码。注意如果要使用composer软件管理的,composer下载的类库都是存放在该目录下面的。

(10).env文件-主要是设置一些系统相关的环境配置文件信息

config目录里面的文件配置内容一般都是读取该文件里面的配置信息(config里面的配置项的值基本都是来自.env文件)。

(11)artisan脚手架文件-主要用于生成的代码的

(自动生成),比如生成控制器,模型文件等。

执行命令:#php artisan 需要执行的指令

  • 要求1:php必须添加环境变量,并且保证版本;

  • 要求2:artisan必须存在命令行当前的工作路径下;

(12)composer.json依赖包配置文件

声明当前需要的软件依赖,但是不能删除,composer需要使用。

需要重点掌握的目录(频繁使用)

目录 作用
app 保存模型文件(默认)
app/Http/Controllers 保存控制器文件
resources/views 保存视图文件
config 配置文件目录
routes 存放路由文件
database/migrations 存放数据库迁移文件(操作数据表结构)
database/seeds 存放数据库种子文件(模拟测试数据)
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post