Zendは最初に、Zend / Controller/Front.phpで利用可能なFrontControllerにすべてのリクエストを送信します。FrontControllerはHttpリクエストをコントローラーに挿入しますここにそれが起こっているコードがあります
/**
* Instantiate default request object (HTTP version) if none provided
*/
if (null !== $request) {
$this->setRequest($request);
} elseif ((null === $request) && (null === ($request = $this->getRequest()))) {
require_once 'Zend/Controller/Request/Http.php';
$request = new Zend_Controller_Request_Http();
$this->setRequest($request);
}
フロントコントローラーの目的は、要求環境を初期化し、着信要求をルーティングしてから、検出されたアクションをディスパッチすることです。応答を集約し、プロセスが完了するとそれらを返します。
FrontControllerの詳細はこちら
さらに質問に答えるには
/**
* Return the Request object
*
* @return Zend_Controller_Request_Abstract
*/
public function getRequest()
{
return $this->_request;
}
これは、Zend / Controller/Action.phpで行うことです。ここでコメントはZend_Controller_Request_Abstract'is -a 'リターンタイプを示しています。'is-a'を強調表示したのは、'is-a'Zend_Controller_Request_Abstractである任意のクラスを返すことができるためです。詳細については、このウィキペディアのページを確認してください
「知識表現、オブジェクト指向プログラミングおよび設計では、is-aまたはis_aまたはis(包含)は、あるクラスDが別のクラスBのサブクラスである(したがって、BはDのスーパークラスである)関係です。」