Zend:在每个页面加载时调用一个动作

时间:2012-10-17 15:36:47

标签: php zend-framework frameworks

我正在尝试使用Zend Framework中的Cookie永久登录 因此,如果设置了特定的cookie,我想检查每个页面加载,如果是,请调用loginAction中的IndexController(动作正常)从cookie中传递两个参数。

我有两个问题:

1。我应该在哪里放置函数调用,以便每次都执行它? Bootstrap.php,layout.phtml,index.php或其他什么地方?

2。如何在传递参数时从loginAction外拨打IndexController

2 个答案:

答案 0 :(得分:0)

  1. 绝对不是layout.phtml(您的视图最好只有HTML输出)。如果您的应用程序有多个bootstraps,您可以将此函数放到index.php中,这样您就不会在不同的bootstrap中使用相同的代码。如果你只有一个bootstrap,那么在那里调用函数。

  2. IndexController::loginAction($param1, $param2);

答案 1 :(得分:0)

我认为在这种情况下插件会更合适。

  

在调度操作之前调用preDispatch()   调度员。此回调允许代理或过滤器行为。通过   改变请求并重置其调度标志(通过   Zend_Controller_Request_Abstract :: setDispatched(false)),当前   可以跳过和/或替换动作。

http://framework.zend.com/manual/1.12/en/zend.controller.plugins.html