0

有什么区别:

$application = new Zend_Application(...);
$application->bootstrap()->run();

$application = new Zend_Application(...);
$application->run();

为什么我们需要调用->bootstrape 然后调用->run?为什么不直接调用 application->run 呢?

4

1 回答 1

2

来自 Zend Sources 类:Zend_Application,文件:application.php

public function bootstrap($resource = null)
{
    $this->getBootstrap()->bootstrap($resource);
    return $this;
}

public function run()
{
    $this->getBootstrap()->run();
}

第一个样本

$application = new Zend_Application(...);
$application->bootstrap()->run();

调用 Zend_Application_Bootstrap_Bootstrap::bootstrap 方法最终加载所有资源。
然后它调用Zend_Application_Bootstrap_Bootstrap::run()实际调度请求。

第二个样本

$application = new Zend_Application(...);
$application->run();

根据上面的代码是跳过第一步,所以它会尝试运行(调度请求)而不实际加载资源。这就是 Zend描述引导和资源的方式。

于 2012-05-31T23:53:19.753 回答