配置中的 Silverstripe 环境变量值

Silverstripe env variable value in config

我想弄清楚 SilverStripe 4.2 是否支持在 similar fashion Symfony does.

的配置文件中引用环境变量

到目前为止,我能够找到 class 负责构建配置的 doesn't seem to have this functionality

我考虑过注入另一个层来解析 YAML 文件并处理环境引用,但似乎您无法扩展服务,因为没有可用的依赖注入容器?

是否有其他方法可以做到这一点?我要做的就是在 YAML 配置文件中使用环境变量。

您可以在 YAML 配置中使用环境变量,前提是它是注入器的配置 class。您不能在注入器配置之外使用它们(从 4.2 开始)。

您可以将它们包裹在反引号中,以便将它们解析到配置中:

SilverStripe\Core\Injector\Injector:
  MyServiceClass:
    properties:
      MyProperty: '`ENV_VAR_HERE`'