- Laravel 教程
- Laravel - 主页
- Laravel - 概述
- Laravel - 安装
- Laravel - 应用程序结构
- Laravel - 配置
- Laravel - 路由
- Laravel - 中间件
- Laravel - 命名空间
- Laravel - 控制器
- Laravel - 请求
- Laravel-Cookie
- Laravel - 响应
- Laravel - 视图
- Laravel - 刀片模板
- Laravel - 重定向
- Laravel - 使用数据库
- Laravel - 错误和日志记录
- Laravel - 表单
- Laravel - 本地化
- Laravel - 会话
- Laravel - 验证
- Laravel - 文件上传
- Laravel - 发送电子邮件
- Laravel - AJAX
- Laravel - 错误处理
- Laravel - 事件处理
- Laravel - 外观
- Laravel - 合约
- Laravel - CSRF 保护
- Laravel - 身份验证
- Laravel - 授权
- Laravel - Artisan 控制台
- Laravel - 加密
- Laravel - 哈希
- 了解发布流程
- Laravel - 访客用户门
- Laravel - Artisan 命令
- Laravel - 分页自定义
- Laravel - 转储服务器
- Laravel - 操作 URL
- Laravel 有用资源
- Laravel - 快速指南
- Laravel - 有用的资源
- Laravel - 讨论
Laravel - 应用程序结构
Laravel 中的应用程序结构基本上是项目中包含的文件夹、子文件夹和文件的结构。一旦我们在 Laravel 中创建了一个项目,我们就可以获得应用程序结构的概述,如下图所示。
这里显示的快照指的是 Laravel 的根文件夹,即laravel-project。它包括各种子文件夹和文件。下面给出了文件夹和文件的分析及其功能方面 -
应用程序
它是应用程序文件夹,包含项目的整个源代码。它包含事件、异常和中间件声明。应用程序文件夹包含各种子文件夹,如下所述 -
安慰
Console 包含 Laravel 所需的 artisan 命令。它包括一个名为Commands的目录,其中所有命令均使用适当的签名进行声明。文件Kernal.php调用Inspire.php中声明的命令。
如果我们需要在 Laravel 中调用特定的命令,那么我们应该在此目录中进行适当的更改。
活动
该文件夹包含该项目的所有事件。
事件用于触发活动、引发错误或必要的验证并提供更大的灵活性。Laravel 将所有事件保存在一个目录下。包含的默认文件是event.php,其中声明了所有基本事件。
例外情况
该文件夹包含处理异常所需的所有方法。它还包含处理所有异常的文件handle.php 。
HTTP
Http文件夹包含控制器、中间件和应用程序请求的子文件夹。由于 Laravel 遵循 MVC 设计模式,因此该文件夹包含为特定目录定义的模型、控制器和视图。
Middleware子文件夹包括中间件机制,包括过滤机制以及响应和请求之间的通信。
Requests子文件夹包含应用程序的所有请求。
工作
Jobs目录维护 Laravel 应用程序排队的活动。基类在所有作业之间共享,并提供一个中心位置将它们放置在一个屋檐下。
听众
侦听器是事件相关的,它们包含用于处理事件和异常的方法。例如,声明的登录事件包括LoginListener事件。
政策
策略是包含授权逻辑的 PHP 类。Laravel 包含一个功能,可以在此子文件夹内的策略类中创建所有授权逻辑。
供应商
该文件夹包含为核心服务器注册事件和配置 Laravel 应用程序所需的所有服务提供者。
引导程序
该文件夹包含所有应用程序引导脚本。它包含一个名为cache 的子文件夹,其中包含与缓存 Web 应用程序相关的所有文件。您还可以找到文件app.php,它初始化引导程序所需的脚本。
配置
config文件夹包含 Laravel 应用程序平稳运行所需的各种配置和相关参数。config 文件夹中包含的各种文件如此处的图像所示。文件名按照与其关联的功能工作。
数据库
顾名思义,该目录包含数据库功能的各种参数。它包括三个子目录,如下所示 -
种子- 这包含用于单元测试数据库的类。
Migrations - 此文件夹有助于查询迁移 Web 应用程序中使用的数据库。
工厂- 此文件夹用于生成大量数据记录。
民众
它是帮助初始化 Laravel 应用程序的根文件夹。它包括以下文件和文件夹 -
.htaccess - 该文件提供服务器配置。
javascript 和 css - 这些文件被视为资产。
index.php - 初始化 Web 应用程序需要此文件。
资源
Resources 目录包含增强 Web 应用程序的文件。该目录中包含的子文件夹及其用途解释如下 -
资产- 资产文件夹包含 LESS 和 SCSS 等文件,这些文件是 Web 应用程序样式所需的。
lang - 此文件夹包含本地化或内部化的配置。
视图- 视图是与最终用户交互并在 MVC 架构中发挥主要作用的 HTML 文件或模板。
请注意,资源目录将被扁平化,而不是具有资产文件夹。其图示如下所示 -
贮存
该文件夹存储了 Laravel 项目运行时经常需要的所有日志和必要文件。该目录中包含的子文件夹及其用途如下 -
app - 该文件夹包含连续调用的文件。
框架- 它包含经常调用的会话、缓存和视图。
日志- 所有异常和错误日志都在此子文件夹中跟踪。
测试
所有单元测试用例都包含在该目录中。命名测试用例类的命名约定是camel_case,并根据类的功能遵循该约定。
小贩
Laravel 完全基于 Composer 依赖项,例如安装 Laravel 设置或包含第三方库等。Vendor 文件夹包含所有 Composer 依赖项。
除了上述文件之外,Laravel 还包括一些其他文件,这些文件在各种功能中起主要作用,例如 GitHub 配置、包和第三方库。
应用程序结构中包含的文件如下所示 -