怎样动态修改config下的配置文件

后台管理使用了laravel-admin,想动态修改主题,logo这些配置文件里的东西,看了些教程除了临时修改的就是通过file_get_contents(),通过文本替换,还有其他的方法或者思路么

《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
最佳答案

请参考我写的记录博客:后台动态配置config文件

3年前 评论
lyl (楼主) 3年前
讨论数量: 12

应该没有其他方法了,想要永久修改配置文件就绕不开对文本进行替换

3年前 评论

将你想动态修改的数据,都改为放在数据库啊

3年前 评论
lyl (楼主) 3年前

@忆往昔弹指间,还得改配置文件吧?后台读取的是配置文件里的值,我在配置文件里查询数据库然后赋值么

3年前 评论

@liyilin 嗯,应该是可以的,你可以尝试一下。

3年前 评论

@忆往昔弹指间 :joy:我已经试了不能再配置文件直接写查询,[百度了这个]www.it1352.com/1540036.html ,我再试试

3年前 评论

请参考我写的记录博客:后台动态配置config文件

3年前 评论
lyl (楼主) 3年前

Kernel.php

.
.
.
protected $middleware = [
        .
        .
        .
        \App\Http\Middleware\SettingsMiddleware::class,
    ];
.
.
.

SettingsMiddleware.php

.
.
.
 public function handle($request, Closure $next)
 {
    $settings = Setting::all()->pluck('value', 'name');

    foreach ($settings as $key => $value) {
       config([$key => $value]);
    }
 }
.
.
.
3年前 评论

@liyilin 那有可能laravel的生命周期中,config是先进行初始化的,之后才初始化数据库驱动。

3年前 评论
orange1994

能动态修改配置文件,违背了配置文件的初衷啊,还是写进数据库里吧。

3年前 评论

直接动态修改config写文件,你这种项目就只适合单机部署,连docker啥的都用不起,放数据库不好么?

3年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!