aaronadal/config-bundle

此扩展包为您的Symfony应用提供了一些配置管理的改进

安装: 882

依赖: 0

建议者: 0

安全性: 0

星标: 0

关注者: 1

分支: 0

开放问题: 0

类型:symfony-bundle

v1.1 2017-03-31 23:57 UTC

This package is auto-updated.

Last update: 2024-09-18 23:31:58 UTC


README

此扩展包为您的Symfony应用提供了一些配置管理的改进。

它允许您将应用配置写入多个与环境相关的文件,这些文件将在应用启动时自动加载。

此扩展包提供了哪些好处?

  • 它提供了一个重要的DX:您可以将配置组织到多个文件中,而无需手动将它们包含在主配置文件中。

  • 它允许您以强大的方式利用Symfony环境,并为每个环境轻松编写不同的配置。

  • 它还提供了一种方法,首先确定一组默认的服务和参数,然后根据环境覆盖它们。

  • 它利用了Symfony缓存系统,因此不会影响您应用的加载时间。

入门指南

安装

您可以使用 Composer 安装此扩展包

composer require aaronadal/config-bundle

之后,您需要将扩展包注册到您的应用内核中

// app/AppKernel.php

public function registerBundles()
{
    return [
        // ...
        new Aaronadal\ConfigBundle\AaronadalConfigBundle(),
        // ...
    ];
}

注意:请勿忘记将其放置在依赖于动态加载参数的扩展包之上。

配置

您可以在两个位置配置(通过 glob模式)来查找配置文件

  • 默认值:确定默认配置文件所在的路径。
  • 环境:确定环境相关配置文件所在的路径。如下面的示例所示,有一个 :env 占位符在运行时引用环境(默认:devprod)。

让我们在config.yml中配置它

aaronadal_config:
    location:
        defaults:    config/parameters/defaults/*.yml
        environment: config/parameters/:env/*.yml

这就完成了!相当简单。现在,config/parameters/defaults/文件夹中的所有yml文件都将始终被加载,如果环境是,例如,dev,则config/parameters/dev/文件夹中的所有yml文件将覆盖默认值(如果没有定义,则定义新值)。

注意1:由于Symfony解析参数的方式,参数不能用于位置的定义。只有:env占位符是有效的。

注意2:位置可以是绝对路径或相对路径。如果它们是相对路径,则将kernel.root_dir作为参考路径。

创建您自己的环境

您不知道如何在Symfony中 创建新的环境 吗?