向Symfony Flex项目添加配置

时间:2018-09-05 08:51:07

标签: php symfony symfony4

我正在尝试为我的Symfony Flex应用程序定义一些自定义配置值(将使用.env值填充),但是所有文档都假设我正在使用捆绑包,例如:https://symfony.com/doc/current/bundles/extension.html

我有一个自定义的命名空间,类似于“ Foo \ Bar”,所以我虽然应该将Extension类称为src\DependencyInjection\FooBarExtension.php,但这是行不通的。

有人知道我如何加载我的自定义配置吗?

编辑:以下解决方案有效:

  • 将配置文件foo.yaml放入config/packages

  • FooExtension.php放入src/DependencyInjection

  • 将以下代码添加到Kernel.php

    public function build(ContainerBuilder $container)
    {
        $container->registerExtension(new FooExtension());
        parent::build($container);
    }
    

1 个答案:

答案 0 :(得分:1)

在Symfony 4.1中,您应该能够通过覆盖build() methodAppKernel中注册新的扩展名。在这里,您可以注册extensions,从而可以解析自己的配置文件。