停止模块引导程序执行

时间:2011-12-15 01:47:46

标签: php zend-framework bootstrapping

我有两个模块(Web,Admin),每个模块都有一个特殊的boostrap类。

抽象示例:

class Admin_Bootstrap extends Zend_Application_Module_Bootstrap{
protected function _initAdminHello(){
    echo "Hello from Admin";
}}


class Web_Bootstrap extends Zend_Application_Module_Bootstrap{
protected function _initWebHello(){
    echo "Hello from Web";
}}

当我打电话给“http://example.com/web”时,它会显示:

“来自网络的Hello”

“管理员问候”

问题:如果在调用 web 模块时停止“Admin_Bootstrap”中的所有方法执行,反之亦然?

这是一个性能杀手。

1 个答案:

答案 0 :(得分:3)

不幸的是,你做不到。正如Matthew Weier O'Phinney在this post中解释的那样,模块引导程序用于准备可能需要的资源,特别是添加到路由器的路由以及配置命名空间和自动加载器以访问模块中的资源。

如果只有当模块是url中请求的模块时才需要执行任务,那么这些任务应该放在前端控制器插件中。