繁体   English   中英

Symfony2:从控制器中的另一个文件获取HTML

[英]Symfony2: Get HTML from another file in controller

在我的Symfony2项目中,我想获取文件的HTML并将其放在我的控制器中的变量中。

我有这样的控制器功能:

public function myControllerAction()
{
   $htmlOtherFile = '';

   return $this->render('@MyBundle/myTargetFile.html.twig', ['htmlOtherFile' => $htmlOtherFile]);
}

我要导入的html文件位于我的views文件夹中: htmlOtherFile.html.twig

如何将此文件的HTML放入我的$htmlOtherFile变量中? 我已经尝试过使用file_get_contents ,但没有成功。

您需要做的就是从模板上的控制器调用renderView并将内容放在变量中。

$html = $this->renderView('/path/myTargetFile.html.twig', [/*options in here*/]);

一定要调用renderView而不是自己render ,因为它会返回一个Response实例,而不是任何HTML。

或者,您可以致电:

$this->render('/path/myTargetFile.html.twig', [/*options in here*/])->getContent();

从响应中返回html。

如果是twig文件 - 你可以试试这个:

$this->renderView('/path/to/template.html.twig', []);

如果需要,您可以直接从您的twig文件中调用控制器。

使用语法{{ render(controller('MyBundle:functionName')) }}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM