![ThinkPHP 5实战](https://wfqqreader-1252317822.image.myqcloud.com/cover/303/27563303/b_27563303.jpg)
上QQ阅读APP看书,第一时间看更新
2.4 配置的读写与示例
使用配置的最终目的是方便开发,也就是在合适的时候需要读写配置,比如实例化数据库的时候需要读取database配置。ThinkPHP通过Config::get和Config::set读写配置。
下面我们来看配置的一个示例,这个示例将完成以下内容的验证:
- 惯例配置的加载
- 全局配置的加载
- 扩展配置的加载
- 场景配置的加载
- 模块配置的加载
- 动态配置的加载与读写
步骤说明如下:
(1)解压缩ThinkPHP 5核心版。
(2)运行PHP服务器,启动命令参照1.2节的相关内容。(3)编辑application/index/controller/Index.php:
![](https://epubservercos.yuewen.com/A59904/15825992005220406/epubprivate/OEBPS/Images/Figure-P21_36928.jpg?sign=1739304774-ykXPTf04ewCXUnmxARpPCocCNVC71cUN-0-36f3b96b5a5f6d377a3f0f7a10d35686)
(4)访问http://localhost:8080,可以看到输出了一段JSON,这就是ThinkPHP的默认配置(惯例配置)。
(5)新建application/extra/amqp.php文件(如果extra目录不存在,就手动创建)。
![](https://epubservercos.yuewen.com/A59904/15825992005220406/epubprivate/OEBPS/Images/Figure-P21_36929.jpg?sign=1739304774-S5C7KWiEMBczivAYvwn1obbSvIWBcBOY-0-a5a671fb9530a87999e0d46dd3da3851)
(6)刷新页面,可以看到有刚才配置的amqp配置。
(7)将application/config.php的app_status更改为home。
(8)添加application/home.php。
![](https://epubservercos.yuewen.com/A59904/15825992005220406/epubprivate/OEBPS/Images/Figure-P21_36930.jpg?sign=1739304774-0ljS5AAuA8hUSBOgttpf0gYl2xbDWBdA-0-464c51390d71cfd86c5fb6dbba560fca)
(9)刷新页面,可以看到amqp的输出已经变成home.php中定义的内容。
(10)添加application/index/config.php。
![](https://epubservercos.yuewen.com/A59904/15825992005220406/epubprivate/OEBPS/Images/Figure-P21_36931.jpg?sign=1739304774-tIiwZV03C5qUlM7FwcbOOFvDpTLKuGeK-0-9e929deeabdb3a8677cb6d5dd8ecca2d)
(11)刷新页面,发现amqp又发生了变化,与上面定义的文件一致。
(12)添加application/index/home.php。
![](https://epubservercos.yuewen.com/A59904/15825992005220406/epubprivate/OEBPS/Images/Figure-P22_36932.jpg?sign=1739304774-TuPhzlOn4AonmFAN2lL5B0m6QKDEAoGJ-0-bc981c901c49aa7d4f6b39626bee1621)
(13)继续刷新页面,发现amqp又发生了变化,与上面定义的文件一致。
(14)编辑application/index/controller/Index.php,添加rw方法测试配置的读写。
![](https://epubservercos.yuewen.com/A59904/15825992005220406/epubprivate/OEBPS/Images/Figure-P22_36933.jpg?sign=1739304774-Pe50HM6m0oFGqrDrcgOiBVZxPNvWjtCg-0-20ae8c2994bfd1a9313752acf4826c67)
(15)访问http://localhost:8080/index/index/rw,可以看到如下输出:
NULL string(3) "111"