从 service.yml 获取价值

Get value from service.yml

我想为我的所有应用程序创建常量值。

为了做到这一点,文档似乎做了类似的事情,在 app/config/services.yml

parameters:
    #parameter_name: value
    CODE_OK: !php/const 200
    CODE_CREATED: !php/const 201
    CODE_MISSING_ARG : !php/const 400
    CODE_INVALID_ARG : !php/const 419

现在我希望能够在控制器中使用这些值...但是我找不到好的 way.May 因为使用 service.yml 不是正确的方法。

您要找的是:

$this->container->getParameter($varName);

您可以将参数作为构造函数参数注入,也可以在方法中使用自动装配。

如果您愿意像示例中那样使用 php 常量,您可能应该使用参数保持这种方式。

如果没有,我建议您创建一个带有常量的 class。

abstract class Constants
{
   const VAR = 'content';
}

并在其他地方使用它:

$var = Constants::VAR;

class 不必是抽象的,但因为它不会被实例化...

请注意,不建议直接从控制器使用参数,因为参数应该在服务中使用。