【问题标题】:How to handle arrays in the configuration? (Laravel)如何处理配置中的数组? (拉拉维尔)
【发布时间】:2018-09-15 00:54:25
【问题描述】:

我创建了一个新的配置文件,它是一个带有字符串键的嵌套数组。 .env 不能存储数组,这就是我创建config/myconfig.php 的原因。我使用Config::get('myconfig')访问数据

不幸的是,每个客户的配置都不相同。由于我无法将此数组放入.env,因此我在需要的地方手动更新了config php文件。

定义环境变量的最佳方法是什么,它不是简单的字符串,而是嵌套数组?

【问题讨论】:

  • 如果需要,没有理由不能在 .env 文件中存储 JSON 字符串。你可以打电话给json_decode()。但请注意,这可能会产生意想不到的后果。
  • 也许this 可以帮助你。
  • 只是好奇,你想将什么样的环境变量存储为数组?这些值不是标量吗?

标签: php laravel laravel-5 environment-variables


【解决方案1】:

在 Laracast 的 this 帖子之后遇到了同样的问题并已修复,我认为它也适合您的问题。

基本上我在 config 文件夹中创建了一个自定义配置文件,例如:

return [     
    env('KEY') => [
        env('KEY_ONE') => env('VALUE_ONE'),     
        env('KEY_TWO') => env('VALUE_TWO')  
    ]
};

在我的 .env 文件中:

KEY=VALUE
KEY_ONE=VALUE_ONE
KEY_TWO=VALUE_TWO

就这么简单,然后您可以在应用程序中调用配置变量来访问数组,例如:

Config::get('configfile_name.key');

或直接到数组索引:

Config::get('configfile_name.key.key_one');

【讨论】:

  • 非常感谢您的帮助,它正在按照我的要求工作
  • 我想将其中一个配置文件中的所有配置作为数组获取
猜你喜欢
  • 1970-01-01
  • 2017-02-03
  • 1970-01-01
  • 2014-06-04
  • 2016-02-06
  • 1970-01-01
  • 2017-09-26
  • 2023-03-29
  • 2022-01-23
相关资源
最近更新 更多