首页 > 解决方案 > 如何在配置特定包中的包中获取配置参数

问题描述

我已经创建了我的包,所以我想获得一些配置值

imk_form:
  form_template: '%kernel.project_dir%/templates/forms'

我想form_template参加我的服务或上课

imk_form:
  form_template: '%kernel.project_dir%/templates/forms'

标签: phpsymfonysymfony-4.3

解决方案


我不知道为什么,但似乎我们无法从配置文件中检索嵌套参数值,即使当您以这种方式定义它们时 Symfony 不会抛出任何错误。您将不得不使用完全限定的参数名称。

配置.yml

parameters:
    imk_form.form_template: '%kernel.project_dir%/templates/forms'

服务.yml

AppBundle\Service\YourService:
    arguments:
        $form_template: '%imk_form.form_template%'

你的服务.php

namespace AppBundle\Service;

class YourService {
  private $form_template;

  public function __construct($form_template)
  {
    $this->form_template = $form_template;
  }
}

推荐阅读