Где и как найти этот плагин Zend Controller

У меня есть плагин фронтального контроллера Zend. Это зависит от объекта запроса и уровня сервиса, но не может повторно использоваться в разных приложениях. Поэтому я думаю, что он находится в каталоге Plugins в каталоге контроллера приложения. Это звучит правильно?

Во-вторых, как я могу заставить Zend автоматически загружать плагины в этот каталог?

Спасибо!


person DatsunBing    schedule 10.12.2012    source источник


Ответы (1)


Я согласен, что плагины должны находиться в папке плагинов. Обычно я устанавливаю экземпляр автозагрузчика ресурсов во время начальной загрузки, используя пользовательское пространство имен моего приложения. Например. скажем, пространство имен вашего приложения было «Боб»:

protected function _initAutoloader()
{
    $autoloader = Zend_Loader_Autoloader::getInstance();

    $resourceAutoloader = new Zend_Loader_Autoloader_Resource(array(
        'basePath' => APPLICATION_PATH,
        'namespace' => 'Bob',
        'resourceTypes' => array(
            'model' => array(
                'path' => 'models/',
                'namespace' => 'Model'
            ),
            'form' => array(
                'path' => 'forms/',
                'namespace' => 'Form'
            ),
            'plugin' => array(
                'path' => 'plugins/',
                'namespace' => 'Plugin'
            ),
            'service' => array(
                'path' => 'services/',
                'namespace' => 'Service'
            )
        )
    ));
    $autoloader->pushAutoloader($resourceAutoloader);

    return $autoloader;
}

При необходимости добавьте или удалите типы ресурсов. Затем вы можете поместить свой плагин в application / plugins / Whatever.php, и он будет автоматически загружен в обычном режиме.

person Tim Fountain    schedule 10.12.2012