设置全局参数Symfony2

问题描述:

我正在使用Symfony2。对于我的应用程序,我需要为此设置一些全局参数。设置全局参数Symfony2

我在parameters.ini文件中定义的参数为:

#app/config/parameters.ini 

[parameters] 
    mailer_auth_mode="login" 
    user_thumbnail_path="images/user/thumbnail" 

我可以用下面的代码来访问这在我的控制器:

$this->container->getParameter('user_thumbnail_path'); 

由于我使用FOSUserBundle,我有覆盖ProfileHandler类,并在这个类中我想使用参数,但我不知道如何。

+2

一般来说,您会希望使您的“处理程序”类成为服务,然后将参数注入到服务中。从这里开始:http://symfony.com/doc/current/book/service_container.html – Cerad 2012-04-19 12:02:16

+0

thx Cerad,但这种解决方案将不适合我的情况,因为我明白,因为即时通讯初学者在symfony2 ...我使用FOSUserBundle并覆盖其处理程序类在那里我想要使用此参数... – 2012-04-19 12:14:16

+1

请考虑更新您的问题并使其成为特定的FOSUserBundle。我不使用捆绑包,所以我不能给你一个确切的答案。但是很多其他人使用这个软件包。在目前的形式下,这个问题太笼统了,以至于任何人都不能提供比一般的解决方案更多的东西。 – Cerad 2012-04-19 12:20:33

创建自己的手柄或延伸你想要的。

将其注册为服务。

my.handler: 
    class: Acme\MyBundle\Form\Handler\MyHandler 
    arguments: ... 

然后将服务ID设置为要处理的表单的处理程序。

fos_user: 
    ... 
    registration: 
     form: 
      handler: my.handler