什么是使用action()的替代方法;或者前进();在ZF中用于在布局中拉出不同的控制器/动作?

时间:2010-04-01 19:08:51

标签: php zend-framework

基本上为了拥有你需要的配置文件块 - 让我们说配置文件控制器,PhotoController,可能是同时显示在同一页面的仪表板,并且在zend框架中达到这个有时通过帮助器动作完成()或者前进,是更好的选择吗?

2 个答案:

答案 0 :(得分:0)

我不确定我清楚地理解你的问题。但是你应该避免使用动作助手,因为它会显着降低你的应用程序的性能。

  

“Action View助手基本上创建了一个额外的   发送,复制请求对象,   并创建一个循环循环。   设置调度过程   是一个昂贵的,谁拥有   他们的代码将会看到   一个Zend的过程有多少   框架应用程序吃了这个。   必须创建一个完整的额外调度   是个坏主意,甚至是Zend Framework   “绩效指南”指出了这一事实。“

这句话来自this article,它解释了为什么你应该避免它以及有什么选择,为什么我认为这是你问题的目的。

答案 1 :(得分:0)

使用此方法可能是动作助手或控制器插件:

if ($condition) {
    $this->getRequest()
        ->setModuleName('mymodule')
        ->setContollerName('mycontroller')
        ->setActionName('myaction');
        // ->setDispatched(false); // redirect
}

或者控制器插件使用合适的视图助手更改布局。