共计 2099 个字符,预计需要花费 6 分钟才能阅读完成。
根目录
目录 | 二级目录 | 简介 | 作用 |
---|---|---|---|
/app | 利用目录 | 利用的外围代码 | |
/bootstrap | 启动目录 | ||
app.php | 框架的启动和主动载入配置 | ||
./cache | 路由和服务缓存 | 框架为晋升性能所生成的文件 | |
/config | 配置目录 | ||
/database | 数据库目录 | 数据库迁徙文件及填充文件 | |
/public | 对外公开目录 | 利用入口文件和前端资源文件 | |
index.php | 利用入口文件 | ||
/resources | 资源目录 | 利用视图文件和未编译的原生前端资源文件 | |
/routes | 路由目录 | ||
web.php | web 中间件组 |
反对 Session、CSRF 爱护以及 Cookie 加密性能 | |
api.php | api 中间件组 |
反对频率限度性能 | |
console.php | 控制台命令 | 用于定义所有基于闭包的控制台命令 | |
channels.php | 用于注册利用反对的所有事件播送频道 | ||
/storage | 文件存储目录 | Blade、Session、文件缓存,框架生成的文件 | |
./app | 利用生成的文件 | ||
./public | 用于存储用户生成的文件 | ||
./framework | 框架生成的文件和缓存 | ||
./logs | 利用的日志文件 | ||
/tests | 测试目录 | 能够通过 phpunit 命令运行测试 |
|
/vendor | 依赖目录 | 蕴含了利用所有通过 Composer 加载的依赖 |
备注
1. 控制台路由 /routes/console.php
Artisan::command('inspire', function () {$this->comment(Inspiring::quote());
})->purpose('Display an inspiring quote');
php artisan inspire
利用目录 /app
目录 | 简介 | 作用 |
---|---|---|
/Broadcasting | 播送频道类 | 事件播送。make:channel |
/Console | 工作脚本 | 注册 Artisan 命令,定义调度工作。make:command |
/Events | 事件 | 寄存事件类。event:generate 和 make:event |
/Exceptions | 异样解决 | 蕴含利用的异样处理器 |
/Http | Web 利用 | 蕴含了控制器、中间件以及表单申请等 |
/Jobs | 队列工作 | 寄存队列工作。make:job |
/Listeners | 事件监听 | 事件监听器。event:generate 和 make:listener |
邮件 | 邮件相干类。make:mail |
|
/Models | Eloquent 模型 | Eloquent 模型类。make:model |
/Notifications | 告诉 | 发送告诉。make:notification |
/Policies | 受权 | 受权策略。make:policy |
/Providers | 服务提供者 | 在利用启动过程中绑定服务到容器、注册事件以及执行其余工作。 |
/Rules | 验证规定 | 在单个对象中封装简单的验证逻辑。make:rule |
备注
PSR- 4 主动载入规范 https://learnku.com/docs/psr/…
1. 此处的“类”泛指所有的 class 类、接口、traits 可复用代码块以及其它相似构造。
2. 一个残缺的类名需具备以下构造:
\< 命名空间 >(\< 子命名空间 >)*\< 类名 >
- 残缺的类名必须要有一个顶级命名空间,被称为 “vendor namespace”;
- 残缺的类名能够有一个或多个子命名空间;
- 残缺的类名必须有一个最终的类名;
- 残缺的类名中任意一部分中的下滑线都是没有非凡含意的;
- 残缺的类名能够由任意大小写字母组成;
- 所有类名都必须是大小写敏感的。
- 当依据残缺的类名载入相应的文件……
- 残缺的类名中,去掉最后面的命名空间分隔符,后面间断的一个或多个命名空间和子命名空间,作为“命名空间前缀”,其必须与至多一个“根目录”绝对应;
- 紧接命名空间前缀后的子命名空间 必须 与相应的”文件基目录“相匹配,其中的命名空间分隔符将作为目录分隔符
- 开端的类名必须与对应的以 .php 为后缀的文件同名。
- 主动加载器(autoloader)的实现肯定不能抛出异样、肯定不能触发任一级别的错误信息以及不应该有返回值。
3. 范例
| 残缺类名 | 命名空间前缀 | 文件基目录 | 文件门路 |
| :————————— | :————– | :——————— | :—————————————- |
| \Acme\Log\Writer\File_Writer | Acme\Log\Writer | ./acme-log-writer/lib/ | ./acme-log-writer/lib/File_Writer.php |
| \Aura\Web\Response\Status | Aura\Web | /path/to/aura-web/src/ | /path/to/aura-web/src/Response/Status.php |
| \Symfony\Core\Request | Symfony\Core | ./vendor/Symfony/Core/ | ./vendor/Symfony/Core/Request.php |
| \Zend\Acl | Zend | /usr/includes/Zend/ | /usr/includes/Zend/Acl.php |
正文完