如何从 Symfony 2 中的任何 class 访问配置参数?
How to access configuration parameters from any class in Symfony 2?
我有一个简单的模型 class 可以加载和保存文件:
<?php
namespace AppBundle\Model;
class WidgetModel {
public function load() {}
public function save() {}
}
从这个 class,我需要访问 config.yml
中定义的配置参数:
parameters:
widgets:
1:
width: 300
height: 250
2:
width: 240
height: 320
在控制器中,我通常会使用语法 $widgetConfig = $this->getParameter('widget');
但显然在这种情况下它不会起作用。
从任何 class 执行此操作的正确方法是什么?
如果您谈论的是服务,您可以inject parameters。
如果您谈到在您的实体中注入参数,那是很糟糕的做法。 Symfony 实体被设计为 POPO(普通旧 php 对象),因此它不应该知道其范围之外的任何东西(即,没有持久性,没有容器,...)。
我有一个简单的模型 class 可以加载和保存文件:
<?php
namespace AppBundle\Model;
class WidgetModel {
public function load() {}
public function save() {}
}
从这个 class,我需要访问 config.yml
中定义的配置参数:
parameters:
widgets:
1:
width: 300
height: 250
2:
width: 240
height: 320
在控制器中,我通常会使用语法 $widgetConfig = $this->getParameter('widget');
但显然在这种情况下它不会起作用。
从任何 class 执行此操作的正确方法是什么?
如果您谈论的是服务,您可以inject parameters。
如果您谈到在您的实体中注入参数,那是很糟糕的做法。 Symfony 实体被设计为 POPO(普通旧 php 对象),因此它不应该知道其范围之外的任何东西(即,没有持久性,没有容器,...)。