Laravel 应用程序结构
应用程序结构是项目中可用的文件夹、子文件夹和文件的结构。在 Laravel 中创建项目后,应用程序结构会生成如下屏幕截图所示:
Laravel 的应用目录
应用目录是 Laravel 中的主要目录之一,大部分的代码都是写在应用目录下的。应用目录包含以下子目录:
- Console (命令行)
- Exceptions (异常处理)
- Http (HTTP 请求)
- Providers (服务提供者)
控制台
控制台文件夹包含了Laravel所需的artisan命令。其中包含了以适当的签名声明的命令。
异常
异常文件夹包含了各种异常处理器。它处理由Laravel项目抛出的异常。异常目录包含了处理异常的方法。
异常目录包含了处理所有异常的文件handle.php。
HTTP
HTTP文件夹是app文件夹的子文件夹。它包含控制器、中间件和请求等子文件夹。Laravel遵循MVC架构,因此HTTP包括控制器、视图和请求。
其中,
- 中间件: 它是HTTP目录的子文件夹。它提供了请求和响应之间的过滤机制和通信。
- 请求: 它是HTTP的子文件夹,包含了应用程序的所有请求。
提供者
提供者目录用于包含所有必要的服务提供者,用于为核心服务器注册事件并为Laravel应用程序提供配置。
Laravel的引导目录
引导目录包含了启动Laravel应用程序和配置自动加载所需的文件。引导文件夹包含了一个用于缓存Web应用程序的子文件夹cache。它还包含了一个名为 app.php 的文件,用于初始化引导所需的脚本。
上面的屏幕显示了bootstrap目录的结构。它包含一个文件夹,即 cache 和两个文件, app.php 和 autoload.php 。
Laravel的配置目录
config目录包含Laravel应用程序所需的各种配置文件。如下截图所示, config 目录中有各种文件,每个文件根据其名称执行各自的功能。
Laravel的数据库目录
数据库目录包含数据库文件。它包含子文件夹 factories , migrations 和 seeds 。数据库目录的结构如下所示:
数据库目录包括三个子目录:
- Factories: factories目录用于生成大量的数据记录。
- Migrations: migrations目录用于在web应用程序中进行数据库迁移。
- Seeds: seeds目录包含用于执行单元测试数据库的类。
Laravel的Public目录
Public目录是一个根目录,包含用于初始化Laravel web应用程序的前端控制器。以下是public目录的子目录:
- .htaaccess: 用于服务器配置。
- Javascript和CSS: 这些文件被视为web应用程序的主要资产。
- index.php: 用于初始化web应用程序。
public目录的结构如下截图所示:
Laravel的资源目录
资源目录包含用于增强Web应用程序的文件。它包含以下子文件夹:
- 资源: 此文件夹包含用于为Web应用程序设置样式的文件,如LESS和SCSS。
- 语言: 语言文件夹提供本地化或国际化的配置。
- 视图: 视图文件夹包含用于与最终用户交互的HTML文件,并在MVC架构中也扮演重要角色。
资源目录的结构如下所示:
Laravel的存储目录
存储目录包含在Laravel项目运行时经常需要的文件。它包含以下文件夹:
- App(应用程序): 它包含经常被调用的文件。
- Framework(框架): 它包含模板、基于文件的会话和文件缓存。
- Logs(日志): 此文件夹跟踪异常和错误日志。
存储目录的结构如下截图所示:
Laravel的测试目录
测试目录包含所有的自动化单元测试案例。测试类的命名约定是 驼峰命名法 ,但要根据类的功能遵循命名约定。
Laravel的供应商目录
供应商目录包含Composer的依赖项,例如,安装Laravel设置需要使用Composer。供应商文件夹包含所有的Composer依赖项。