Zend_View_Helper与Zend View部分脚本

|| 这是我前进的道路。 我想在网页上显示某种按钮,并且我想在许多地方这样做。这个“按钮”实际上就像链接到其他页面一样,所有按钮实例都将进入一个页面。 我希望所有按钮都一样,除了它们的大小。 现在,我应该使用带有html的部分脚本作为按钮并调用部分视图助手来呈现,还是应该创建一个Zend_View_Helper来在调用按钮时返回html? 我知道我可以任一种摇摆,但您认为哪个更好? 我看到的一些东西: 该帮助程序可能会更好,因为它不必创建Zend_View的克隆之类的BIG对象即可完成部分操作。 对于html人员而言,部分脚本将更容易使用。     
已邀请:
使用$ this-> render()代替$ this-> partial()。 仅在需要对范围进行更多控制时才使用局部函数。就像您说的那样,由于必须创建一个新的Zend_View实例,因此开销很大。不使用渲染。 要解决您的实际问题,我建议在视图助手上使用渲染(或局部渲染),因为这样可以简化设计工作,并减少开销。查看助手用于自定义功能。 一个好的经验法则是:您要包含content / html,还是要生成内容/应用转换。后者是助手。     
根据您的描述,我建议对您的任务使用partial。原因是您的按钮似乎主要是html,而没有太多的php。您可以将大小传递给局部,仅此而已。但是,如果您想在按钮的生成过程中加入更多逻辑(例如数据库,auth或acl查询),则建议使用视图帮助器。 ps。 第三种选择是同时使用部分帮助程序和视图帮助程序,也许不是针对这种特定情况,而是在更一般的意义上。您可能有对php所做的帮助程序,该帮助程序调用了一部分以返回所需的html。     
每当需要非常参数化的值时,我都会倾向于使用视图助手。例如:
echo $this->button(\'Button Text\', \'/foo/bar/baz\');
看起来比:
$this->buttonText = \'Button Text\';
$this->buttonUrl = \'/foo/bar/baz\';
echo $this->render(\'button.phtml\');
另外,也没有理由不能从视图帮助器中渲染视图脚本。     

要回复问题请先登录注册