Как я могу расширить Zend_Controller_Request_Http - PullRequest
1 голос
/ 23 августа 2010

Как мне расширить Zend_Controller_Request_Http и дать приложению знать о My_Controller_Request_Http ??

Решение

Так я начал работать, следуя указателям Гордона.

Первый файл сохраняет в вашей библиотеке следующий файл: My / Controller / Request / Http.php

<?php

class My_Controller_Request_Http extends Zend_Controller_Request_Http {

    /* Add all your custom functions here */

}

В классе начальной загрузки я добавил следующее.

function _initApplication ()
{
    /* Doing some other stuff here */

    $this->bootstrap('frontcontroller');
    $front = $this->getResource('frontcontroller');

    $front->setRequest('My_Controller_Request_Http');

    /* Registering some plugins here, not relevant */
}

1 Ответ

2 голосов
/ 23 августа 2010

С http://framework.zend.com/manual/en/zend.controller.front.html

setRequest () и getRequest () позволяют вам указать класс или объект запроса, который будет использоваться в процессе отправки и для получения текущего объекта. При настройке объекта запроса вы можете передать имя класса запроса, и в этом случае метод загрузит файл класса и создаст его экземпляр.

Из API :

Zend_Controller_Front  setRequest  (string|Zend_Controller_Request_Abstract $request) 

Класс также можно (не уверен) установить из конфигурации, передав правильные значения в Zend_Application_Resource_Frontcontroller

Подклассы объекта Request объяснены в

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...