Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/unix/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 在symfony 2中,什么是zend';s视图帮助程序_Php_Symfony_Twig - Fatal编程技术网

Php 在symfony 2中,什么是zend';s视图帮助程序

Php 在symfony 2中,什么是zend';s视图帮助程序,php,symfony,twig,Php,Symfony,Twig,我正在寻找一种方法,有一个网站导航菜单,将主要用于布局文件,然后在模板中扩展 在zend中,我将创建一个视图助手,它将获取相关项目并呈现链接。我目前在一个由其他人扩展的小树枝模板中硬编码菜单(如zend中的布局)。感觉这不是最好的方法 我正在有效地尝试将代码拆分为单独的内容,因为我正在使用TwigURL帮助器生成链接 我研究过细枝函数,但它们似乎主要用于获取数据,而不是呈现可重复使用的html片段。我还考虑过创建一个服务来获取标题、路线等数据数组,但我认为我必须在模板需要导航菜单的每个操作中使用

我正在寻找一种方法,有一个网站导航菜单,将主要用于布局文件,然后在模板中扩展

在zend中,我将创建一个视图助手,它将获取相关项目并呈现链接。我目前在一个由其他人扩展的小树枝模板中硬编码菜单(如zend中的布局)。感觉这不是最好的方法

我正在有效地尝试将代码拆分为单独的内容,因为我正在使用TwigURL帮助器生成链接

我研究过细枝函数,但它们似乎主要用于获取数据,而不是呈现可重复使用的html片段。我还考虑过创建一个服务来获取标题、路线等数据数组,但我认为我必须在模板需要导航菜单的每个操作中使用它,这感觉太重复了,因为symfony没有zend中的控制器初始化方法,在zend中,您可以一次完成所有操作


因此,我的问题是,推荐的symfony2/twig方法是什么。

我不使用Zend,但在Symfony中,您可以很容易地获得可重用的twig片段。您只需编写一个特定的控制器方法及其关联的细枝模板,然后使用
render()
方法从任何位置调用它。来自具有一个参数的细枝模板的调用示例:

{{ render(controller("AcmeCategoryBundle:Category:menu", { 'position': 1 })) }}

希望这对您有所帮助。

谢谢这正是我需要的。我刚刚向我的页面控制器添加了一个额外的操作来获取链接,然后将它们传递给呈现菜单的视图。