Создание плагина контролера для Zend Framework 2

Создаём файл плагина module/MyModule/src/MyModule/Controller/Plugin/MyFirstPlugin.php

1
2
3
4
5
6
7
8
9
   <?php
      namespace MyModule\Controller\Plugin;
      use Zend\Mvc\Controller\Plugin\AbstractPlugin;
      class MyFirstPlugin extends AbstractPlugin
      {
         public function doSomething() {
            // ...
         }
      }

Далее в module/MyModule/config/module.config.php

1
2
3
4
5
6
7
8
9
10
   <?php
      return array(
         // ... your configuration
            'controller_plugins' => array(
               'invokables' => array(
                  'MyFirstPlugin' => 'MyModule\Controller\Plugin\MyFirstPlugin',
               )
            ),
         // ...
      );

Теперь в файле контролера module/MyModule/src/MyModule/Controller/IndexController.php вызываем плагин

1
2
3
4
5
6
7
8
9
10
11
   <?php
      namespace MyModule\Controller;
      use Zend\Mvc\Controller\AbstractActionController;
      use Zend\View\Model\ViewModel;
      class IndexController extends AbstractActionController {
         public function indexAction() {
            $plugin = $this->MyFirstPlugin();
            $plugin->doSomething();
            return new ViewModel();
         }
      }

Ссылка на оригинал

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *