应用的核心代码位于 app 目录下,默认情况下,该目录位于命名空间 App 下, 并且被 Composer 通过 PSR-4自动载入标准 自动加载。

app 目录下包含多个子目录,如ConsoleHttpProviders等。ConsoleHttp目录提供了进入应用核心的API,HTTP协议和CLI是和应用进行交互的两种机制,但实际上并不包含应用逻辑。换句话说,它们只是两个向应用发布命令的方式。Console目录包含了所有的Artisan命令,Http目录包含了控制器、中间件和请求等。

其他目录会在你通过 Artisan 命令 make 生成相应类的时候生成到 app 目录下。例如,app/Jobs 目录直到你执行 make:job 命令生成任务类时才会出现在 app 目录下。

注意:app 目录中的很多类都可以通过 Artisan 命令生成,要查看所有有效的命令,可以在终端中运行php artisan list make命令。

链接 : http://www.cnblogs.com/buxiangxin/p/7777848.html

Console目录

Console 目录包含应用所有自定义的 Artisan 命令,这些命令类可以使用 make:command 命令生成。该目录下还有 Console Kernel 类,在这里可以注册自定义的 Artisan 命令以及定义调度任务

Events目录

这个目录默认不存在,但是可以通过 event:generatemake:event 命令创建。该目录用于存放事件类。事件类用于告知应用其他部分某个事件发生并提供灵活的、解耦的处理机制。

Exceptions目录

Exceptions 目录包含应用的异常处理器,同时还是处理应用抛出的任何异常的好地方。如果你想要自定义异常如何记录异常或渲染,需要修改 Handler 类。

Http目录

Http 目录包含了控制器、中间件以及表单请求等,几乎所有进入应用的请求处理都在这里进行。

Jobs目录

该目录默认不存在,可以通过执行 make:job 命令生成,Jobs目录用于存放队列任务,应用中的任务可以被推送到队列,也可以在当前请求生命周期内同步执行。同步执行的任务有时也被看作命令,因为它们实现了命令模式

Listeners目录

这个目录默认不存在,可以通过执行 event:generatemake:listener 命令创建。Listeners 目录包含处理事件的类(事件监听器),事件监听器接收一个事件并提供对该事件发生后的响应逻辑,例如,UserRegistered 事件可以被 SendWelcomeEmail 监听器处理。

Mail目录

这个目录默认不存在,但是可以通过执行 make:mail 命令生成,Mail 目录包含邮件发送类,邮件对象允许你在一个地方封装构建邮件所需的所有业务逻辑,然后使用 Mail::send 方法发送邮件。

Notifications目录

这个目录默认不存在,你可以通过执行 make:notification 命令创建, Notifications 目录包含应用发送的所有通知,比如事件发生通知。Laravel 的通知功能将通知发送和通知驱动解耦,你可以通过邮件,也可以通过Slack、短信或者数据库发送通知。

Policies目录

这个目录默认不存在,你可以通过执行 make:policy 命令来创建, Policies 目录包含了所有的授权策略类,策略用于判断某个用户是否有权限去访问指定资源。更多详情,请查看授权文档

Providers目录

Providers 目录包含应用的所有服务提供者。服务提供者在启动应用过程中绑定服务到容器、注册事件以及执行其他任务以为即将到来的请求处理做准备。

在新安装的 Laravel 应用中,该目录已经包含了一些服务提供者,你可以按需添加自己的服务提供者到该目录。

(2) laravel App目录结构说明的更多相关文章

  1. Laravel项目目录结构说明

    Laravel项目目录结构说明: |- vendor 目录包含你的 Composer 依赖模块及laravel框架. |- bootstrap 目录包含几个框架启动跟自动加载配置的文件. |- app ...

  2. 详解Laravel的目录结构

    Models 目录在哪里? 许多初学者可能都会困惑 Laravel 为什么没有提供 models 目录,官方解释说是因为不同人对 models 这个词的含义看法不同,容易造成歧义,有些开发者认为应用的 ...

  3. Laravel之目录结构

    一.根目录 新安装的 Laravel 应用包含许多文件夹:• app 目录包含了应用的核心代码:• bootstrap 目录包含了少许文件用于框架的启动和自动载入配置,还有一个cache 文件夹用于包 ...

  4. Laravel系列 目录结构

    Where Is The Models Directory? app directory by default 其中 app:,core code of your application, almos ...

  5. iOS 创建一个App目录结构

    Class:存放的是App中所有的模块功能 Base:存放一些基类,比如BaseViewController,BaseModel等,共性直接在基类中去修改 Vendor:三方,因为我的项目中使用coc ...

  6. laravel框架目录结构详解

  7. laravel 目录结构

    图 1.1 显示了 Laravel 项目目录结构是什么样子: 图1.1 Laravel 项目目录结构 就如你看到这样,laravel下面只包含了4个文件夹,这4个文件夹下面有一些子文件夹,这种丰富的子 ...

  8. 【Django】基于Django架构网站代码的目录结构

     经典的Django项目源码目录结构 Django在一个项目的目录结构划分方面缺乏必要的规范.在Django的官方文档中并没有给出大型项目的代码建议目录结构,网上的文章也是根据项目的不同结构也有适当的 ...

  9. Laravel笔记目录

    一.MVC 1.路由 2.控制器与视图 3.控制器与路由的绑定 4.中间件 二.模式与数据库 1.数据库迁移 2.填充测试数据 3.ORM入门 4.分页 三.Laravel的生命周期 1.Larave ...

随机推荐

  1. sql sever 触发器的概念和使用

    触发器简介: 触发器是一种特殊的存储过程,它的执行不是由程序调用,也不是手动执行,而是由事件来触发.触发器是当对某一个表进行操作.例如:update.insert.delete这些操作的时候,系统会自 ...

  2. Neo4j 快速清除数据库数据

    在开发过程中,很多时候需要快(简)速(单)清(粗)除(暴)Neo4j中存在的海量数据节点和关系数据.在这种情况下,delete和detach从性能上都已力不从心.Neo4j官方推荐清库方法,即删除gr ...

  3. ES 的基本用法

    ES的基本用法 ES的基本概念 1> 集群和节点 一个es集群是由一个或多和es节点组成的集合 每一个集群都有一个名字, 如之前的wali 每个节点都有自己的名字, 如之前的master, sl ...

  4. bzoj 3498

    统计三元环 很多代码在bzoj都T诶 #include <iostream> #include <cstdio> #include <algorithm> #inc ...

  5. 基于评分的商品top-N推荐系统

    import io # needed because of weird encoding of u.item file import os from surprise import KNNBaseli ...

  6. Queue Pair in RDMA (zz)

    Queue Pair in RDMA 首页分类标签留言关于订阅2018-03-21 | 分类 Network  | 标签 RDMA 一个CA(Channel Adapter)可以包含多个QP,QP相当 ...

  7. laravel-china 镜像停止服务

    php 的很多开发都会用到composer.然后国内的镜像又慢,很多人会选择用laravel-china的镜像. 之前一直用的很好.今天突然发现不能composer update.出现报错.WTF!! ...

  8. 数据结构实验之查找一:二叉排序树 (SDUT 3373)

    二叉排序树(Binary Sort Tree),又称二叉查找树(Binary Search Tree),也称二叉搜索树. #include <stdio.h> #include <s ...

  9. js的新生代垃圾回收

    推荐阅读:https://www.cnblogs.com/chengxs/p/10919311.html 在进行老生代的标记清除法回收以前,还会有一个新生代的垃圾回收算法执行. 新生代和老生代 所谓新 ...

  10. mac 安装 mysql 5.7

    下载 https://dev.mysql.com/downloads/mysql/5.7.html#downloads 下一步,经过一系列安装步骤后,会跳出一个这样的界面,请注意!!! 上面红框中是你 ...