从控制器Symfony2

时间:2015-09-24 09:24:25

标签: symfony

我想从我的控制器调用位于app / config中的.yml文件。

以下是代码:

$menu_yml = __DIR__.'%kernel.root_dir%/app/config/main_menu.yml';
$menu = Yaml::parse($menu_yml);

我尝试了很多选项,从FileLocatorFinder开始,但我无法接触到这些选项。有什么想法吗?

非常感谢!

1 个答案:

答案 0 :(得分:1)

kernel.root_dir是symfony应用程序根目录的绝对路径,因此您不需要__DIR__。但是你需要向容器询问参数的值。

例如,你可以(在你的控制器中):

$root_dir = $this->container->getParameter('kernel.root_dir');
$menu_yml = $root_dir.'/app/config/main_menu.yml';
$menu = Yaml::parse($menu_yml);

您可以使用以下命令通过命令行检查参数的值:

  

app / console container:debug --parameter = kernel.root_dir

希望这个帮助