首页 > 解决方案 > 树路径的 Symfony 访问参数

问题描述

我尝试做某事,也许很简单,但我找不到怎么做!

我的 yml 文件是这样的:

parameters:
    mykey1:
        mykey2:
            mykey3: value

我想在我的服务中使用它,例如“%mykey1.mykey2.mykey3%”,但收到一条消息,告诉“mykey1.mykey2.mykey3”不存在......我必须使用“%mykey1%”并在 php 中使用$mykey['mykey2']['mykey3']。

或者我必须像这样在平面模式下写我的参数,但我不喜欢这样,因为我的参数中有很多东西在很多级别......

parameters:
    mykey1.mykey2.mykey3 : value

标签: symfonyyaml

解决方案


参数是简单的键值存储。他们不以任何方式支持嵌套。这也不是他们应该支持的,这不是参数应该解决的问题。

相反,您可能希望为您的包(或应用程序)添加自定义配置。然后在容器编译期间将此配置转换为参数。有关这方面的更多信息,请参阅https://symfony.com/doc/current/bundles/configuration.html


推荐阅读