app:应用程序目录,应用程序中几乎所有的类都在此目录中.
bootstrap:引导目录,包含引导框架并自动加载的文件.该目录还包含一个cache目录,其中包含用于性能优化的框架生成文件,例如路由和服务缓存文件.
config:配置目录,包含所有应用程序的配置文件.
database:数据库目录,包含您的数据库迁移和种子.
public:公共目录,public目录包含文件是进入应用程序的所有请求的入口点.此目录还包含您的资源,例如图像JavaScript和css.index.php.
resources:资源目录,包含您的视图,以及您的原始未编译资源(如less,sass或JavaScript).还包含您所有的语言文件.
routes: 路线目录,
该routes
目录包含应用程序的所有路由定义。默认情况下,有几个途径文件包含Laravel: ,, 和。web.php
api.php
console.php
channels.php
该文件包含路线的中位中间件组,它提供了会话状态,CSRF保护和Cookie加密。如果您的应用程序不提供无状态的RESTful API,则所有路由都将很可能在文件中定义。web.php
RouteServiceProvider
web
web.php
该文件包含中间件组中的位置的路由,它提供速率限制。这些路由是无状态的,因此通过这些路由进入应用程序的请求旨在通过令牌进行身份验证,并且不会访问会话状态。api.php
RouteServiceProvider
api
该文件是您可以定义所有基于Closure的控制台命令的地方。每个Closure绑定到命令实例,允许简单的方法与每个命令的IO方法进行交互。即使这个文件没有定义HTTP路由,它将基于控制台的入口点(路由)定义到应用程序中。console.php
该文件是您可以注册您的应用程序支持的所有事件广播频道的地方。channels.php
storage :存储目录,该目录下包含您的编译blade模板,基于文件的会话,文件缓存和框架生成其他的文件,这个目录,分成app, framework,logs,该app目录可能用于存储应用程序生成的任何文件.该framework目录用于存储框架生成的文件和缓存.log目录包含应用程序的日志文件.该目录可以用于存储用户生成的文件,例如公开访问的简档头像.您可以创建一个符号链接指向此目录的点, storage/app/public
public/storage
php artisan storage:link
tests:包含您的测试文件.每个测试类应该用Test这个单词作为后缀.用phpunit或者命令运行测试 php vendor/bin/phpunit
ventor:供应商目录,包含您的Composer依赖项.
您的大部分应用程序都放在app
目录中。默认情况下,该目录的命名空间App
是由Composer使用PSR-4自动加载标准自动加载的。
该app
目录包含了多种额外的目录,如Console
,Http
和Providers
。将目录Console
和Http
目录视为将API提供到应用程序的核心。HTTP协议和CLI都是与应用程序交互的机制,但实际上并不包含应用程序逻辑。换句话说,它们只是向应用程序发出命令的两种方法。该Console
目录包含所有的Artisan命令,而该Http
目录包含您的控制器,中间件和请求。
app
当您使用make
Artisan命令生成类时,将在目录中生成各种其他目录。所以,例如,在执行Artisan命令生成作业类之前,该目录将不存在。app/Jobs
make:job
控制台目录包含您的应用程序的所有定制artisan命令,可以使用命令生成这些命令.该目录还包含您的控制台内核,这是您的定制artisan命令注册的地方,并且定义了您的计划任务.
http: 包含您的控制器,中间件和表单请求.几乎处理进入应用程序的请求的所有逻辑都将放在此目录中.
工作目录 ,默认是不存在的,执行artisan命令后,则创建,该目录包含应用程序的可排队作业.作业可能会被你的应用排队或在当前请求生命周期内同运行.在当前请求期间同步运行的作业有时会被称为"命令",因为他们是命令模式实现的.
通知目录:执行artisan后生成.包含应用程序发送的所有''事务性"通知.laravel的通知功能摘要通过各种驱动程序(如电子邮件,slack,sms)发送通知或存储在数据库中.
政策目录
默认情况下,此目录不存在,但是如果执行Artisan命令,则将为您创建此目录。该目录包含您的应用程序的授权策略类。策略用于确定用户是否可以针对资源执行给定的操作。有关更多信息,请查看授权文档。make:policy
Policies
供应商目录
该Providers
目录包含您的应用程序的所有服务提供程序。服务提供商通过在服务容器中绑定服务,注册事件或执行任何其他任务来准备应用程序来引导您的应用程序。
在一个新的Laravel应用程序中,此目录将包含几个提供程序。您可以根据需要自由添加自己的提供者到这个目录。
规则目录
默认情况下,此目录不存在,但是如果执行Artisan命令,则将为您创建此目录。该目录包含应用程序的自定义验证规则对象。规则用于将复杂的验证逻辑封装在一个简单的对象中。有关更多信息,请查看验证文档。make:rule
Rules