2011-04-26 78 views
18

我想知道什么是在Zend Framework中引导的真正目的。在zend中引导程序的目的是什么?

进入Bootstrap类的方法是什么?

任何教程链接可能会有帮助...如果问题太模糊,请原谅我。我正在尝试学习Zend,但教程和书籍正在跳过步骤,并且它们在框架网站中并不那么清楚。我能从快速入门中学到的一点是,它有助于启动会话。

我是否认为引导程序在任何控制器加载之前先运行?我可以在bootstrap中编写任何需要从头开始加载的方法吗?如何访问控制器中的引导程序方法?

回答

20

From Wikipedia:

在计算中,自举(从旧表述“拉自己向上一个的引导程序”)是由一个简单的计算机程序激活的程序的更复杂的系统的技术。在计算机系统的启动过程中,一个小程序(如BIOS)初始化并测试硬件,外围设备和外部存储设备的基本要求是否连接。然后它从其中一个加载程序并将控制权交给它,从而允许加载更大的程序(例如操作系统)。

在Zend Framework中,bootstrapping是加载应用程序的过程。这包括但不限于会议。应用程序处理请求(the dispatch)所需的任何资源在请求被满足之前被引导/加载/初始化。在控制器将任何输入委托给模型并创建发送回客户端的响应之前。

其他信息:http://framework.zend.com/manual/1.12/en/zend.application.theory-of-operation.html

+0

谢谢你戈登..我最终会在我需要调用我的控制器中的引导方法的状态?我可以按我喜欢的方式命名自举方法吗?如果是的话,这种方法会自动启动? – Karthik 2011-04-26 10:48:11

+1

有关哪些资源的信息也可能有用。因此,'Zend_Application Resource是Zend_Application知道的任何类,它将在引导过程中配置使用'(from [here](http://www.survivethedeepend.com/zendframeworkbook/en/1.0/standardise.the.bootstrap .class.with.zend.application))。 – Marcin 2011-04-26 10:50:46

+0

真棒链接Marcin ...干杯.... – Karthik 2011-04-26 10:56:16

4

正如戈登说:

在Zend框架,引导是加载应用程序的过程。这包括但不限于会议。

您可以在Bootstrap类中创建许多私有方法。所有以_init前缀开头的所有方法名都将在应用程序启动前执行一次。

一个例子在这里:

class Bootstrap extends Zend_Application_Bootstrap_Bootstrap 
{ 

    protected function initSidebar(){ 
     // Define a placeholder view for a template/layout 
     $this->bootstrap('View'); //Make sure the view resource is made available 
     $view = $this->getResource('View'); 

     $view->placeholder('sidebar') 
      ->setPrefix("<div class=\"sidebar\">\n <div class=\"block\">\n") 
      ->setSeparator("</div>\n <div class=\"block\">\n") 
      ->setPostfix("</div>\n</div>"); 
    } 

    protected function initDocType() { 
     // Define a constant for the Doctype string on the template 
     $this->bootstrap('View'); 
     $view = $this->getResource('View'); 
     $view->doctype('HTML5'); 
    } 
} 
0

一个简单的是:

从指数

除此之外,如果我们想要做的关于数据库和被引导内做其他事情的任何额外的配置。

相关问题