【发布时间】:2020-07-06 09:14:15
【问题描述】:
我想更改bootstrap/app.php 中的配置数据库值。
我找到了执行此操作的函数:config(['database.default' => 'mysql2']) 但我有那个错误:Fatal error: Uncaught ReflectionException: Class config does not exist in C:\xampp\htdocs\project\vendor\laravel\framework\src\Illuminate\Container\Container.php:779 Stack trace: #0
C:\xampp\htdocs\project\vendor\laravel\framework\src\Illuminate\Container\Container.php(779): ReflectionClass->__construct('config') #1
C:\xampp\htdocs\project\vendor\laravel\framework\src\Illuminate\Container\Container.php(658): Illuminate\Container\Container->build('config') #2
C:\xampp\htdocs\project\vendor\laravel\framework\src\Illuminate\Container\Container.php(609): Illuminate\Container\Container->resolve('config', Array) #3
C:\xampp\htdocs\project\vendor\laravel\framework\src\Illuminate\Foundation\Application.php(759): Illuminate\Container\Container->make('config', Array) #4
C:\xampp\htdocs\project\vendor\laravel\framework\src\Illuminate\Foundation\helpers.php(121): Illuminate\Foundation\Application->make('config', Array) #5
C:\xampp\htdocs\project\vendor\laravel\framework\src\Illuminate\Foundation\helpers.php(280): app('config') #6
C:\xampp\htdocs\project\bootstrap\a in C:\xampp\htdocs\project\vendor\laravel\framework\src\Illuminate\Container\Container.php on line 779
我的 laravel 版本是 5.7。我尝试添加外观use Illuminate\Support\Facades\Config,但没有帮助。
如何正确执行?
【问题讨论】:
-
您不需要触摸该引导文件,而且它不是这样做的正确位置...如果您正在编辑项目文件以更改数据库配置,为什么不只是编辑数据库的实际配置文件
config/database.php?或者使用.env文件设置值 -
因为我想更改数据库取决于子域。我发现 bootstrap/app.php 可以更改它,并且在我交换
.env文件时它可以工作。编辑:我不想更改 .env 文件,因为我想使用配置缓存。 -
没有引导程序不是这个地方......框架甚至还没有启动
-
使用
.env文件并不能阻止您拥有缓存配置...您不能在配置文件之外使用env辅助函数.. 仅此而已 -
好的,那么在哪里修改它以及如何使用
config(['database.default' => 'mysql2'])函数,我只想知道?