## 初始化
### 创建框架目录结构
创建空文件夹,如: `php_frame`
然后在这个文件夹创建以下 `空文件夹` 和 `空文件`
```
app.php
+---app
+---config
+---core
+---public
| index.php
|
+---routes
+---storage
+---tests
\---views
```
## 使用composer初始化本项目
进入框架目录
```
composer init
```
![](https://img.kancloud.cn/b5/44/b54432f1b48090008a005947ca509a91_1046x545.png)
## 最终
将会生成一个 `composer.json` 文件
![](https://img.kancloud.cn/74/d0/74d03982ad8a3fc8deb2a30521b5ed2c_729x329.png)
- 前言
- 基础篇
- 1. 第一步 创建框架目录结构
- 2. 引入composer自动加载
- 3. php自动加载 (解释篇)
- 4. 创建容器 注册树模式
- 5. 关于psr规范解释
- 6. 关于"容器" "契约" "依赖注入" (解释篇)
- 7. 添加函数文件helpers.php
- 8. 初始化请求(Request)
- 9. 响应 (Response)
- 10. 路由一 (路由组实现)
- 11. 路由二 (加入中间件)
- 12. 配置信息 (类似laravel)
- 13. 数据库连接 (多例模式)
- 14. 查询构造器 (query builder)
- MVC实现
- M 模型实现 (数据映射 + 原型 模式)
- C 控制器实现 + 控制器中间件
- V 视图实现 (Laravel Blade 引擎)
- V 视图切换成 ThinkPhp 模板 引擎)
- 其他轮子
- 日志
- 自定义异常 (异常托管)
- 单元测试 (phpunit)
- 替换成swoole的http服务器
- 协程上下文解决request问题
- qps测试
- 发布到packagist.org