如何在子文件夹中的laravel中获取配置数据

Ser*_*ero 8 php laravel

我有Laravel管理员插件,我设置了一个位于以下位置的设置管理员页面:

应用程序/配置/管理员/设置/ site.php

应用程序可以存储数据,但是当我尝试在我的一个控制器中获取某些数据时,如下所示:

配置::得到( 'administrator.settings.site')

我可以得到一个返回值...始终为null或数组0.

我如何获得这些配置值?

fid*_*per 36

解:

您可以为文件路径使用文件路径而不是点符号:

Config::get('administrator/settings/site.variable_name');
Run Code Online (Sandbox Code Playgroud)

一些解释

点表示法用于在文件中的配置数组中获取变量,而不是表示文件路径.

因此,您可以使用或Config::get('administrator/settings/site.variable_name');从您的环境中获取$ variable_name .administrator/settings/site.phpENV_DIR_NAME/administrator/settings/site.php

内部的目录app/config被视为环境.例如app/development/database.php,Config::get('database.whatever')当您处于"开发"环境时,app/production/database.phpConfig::get('database.whatever')在您处于"生产"环境时阅读.

config/config/*.php当没有特定于环境的文件时,Laravel会回退到该文件.

注意

我相信管理包有一个配置文件,app/config/packages/frozennode/administrator/administrator.php这个配置文件包中你可以使用它的设置.应该可以使用此约定:Config::get('package::file.option');