2014-02-20 45 views
0

在我的Symfony2/web/img目录内有一个文件del.png,我想从控制器内显示。在Symfony控制器内部找不到图像路径

我尝试使用功能像image_tag()image_path()但Symfony的告诉我,这是未知的功能...

可以用做:

$html = "<img src='".$request->getBasePath()."/img/del.png' alt='Delete user' border=0>"; 
return $this->render ('myBundle:stats:menu.html.twig', array('html'=>$html)); 

或也Symfony2 Assetic get asset urls from inside controller, not template

喜欢说但我认为这可以做一个更简单的方法。这似乎SOOO简单,所以我可能忘了什么东西:-( 任何建议

+0

的http:// symfony的.com/doc/current/cookbook/assetic/asset_management.html#includes-images – naththedeveloper

+0

@FDL,位于树枝模板中,我想在PHP文件中使用它({{...}}不起作用那么) – PBR

+0

...也有PHP示例(在标签中) – naththedeveloper

回答

2

你可以做到这一点,如:?

$this->container->get('templating.helper.assets')->getUrl('img/edit.png') 
1

使用assetic功能

echo '<img src="'.$view['assets']->getUrl('img/del.png').'" alt="Delete user" border="0">'; 
+0

你在哪里定义/获取$ view变量? – PBR

+0

$ view已经在php模板中可用 –

+0

对不起,但我没有写在模板中,而是在控制器中。 – PBR