【问题标题】:Symfony2 - pass parameter to serviceSymfony2 - 将参数传递给服务
【发布时间】:2011-12-01 10:00:55
【问题描述】:

有没有办法将参数从 SESSION 或其他来源传递给服务? 我的捆绑配置中有这样的东西:

<service id="class" class="MyClass">
    <argument key="lang">%class.lang%</argument>
</service>

我知道可以通过在 DependencyInjection 中从 Extension 传递参数来完成,但我不确定这个变量的来源,它可能是会话,但在某些情况下可以从数据库中读取。我只是不想在 DependencyInjection 中硬编码该参数应该从会话传递。

我也知道我可以从应用程序配置中传递参数,但是在应用程序中进行一些操作后有什么方法可以更改它?

【问题讨论】:

    标签: php symfony


    【解决方案1】:

    如果该参数未通过配置固定(即,如果它取决于某些应用程序逻辑),我会将其放在特定类中,将该类注册为特定服务(注入所有需要的服务以确定您感兴趣的值),然后在您需要该值的地方注入特定服务。

    【讨论】:

      猜你喜欢
      • 2016-08-17
      • 2013-10-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-05-19
      • 1970-01-01
      相关资源
      最近更新 更多