Я действительно удивлен тем, насколько это неясно, потому что у меня была точно такая же проблема, и я не мог найти окончательный ответ.Можно подумать, что документация ZF2 скажет что-то об этом.В любом случае, используя метод проб и ошибок, я наткнулся на этот чрезвычайно простой ответ:
Внутренние функции контроллера:
$config = $this->getServiceLocator()->get('Config');
Внутренние функции класса модуля (файл Module.php
):
$config = $e->getApplication()->getServiceManager()->get('Config');
, тогда как $e
является экземпляром Zend\Mvc\MvcEvent
Как правило, конфигурация доступна из любого места, где у вас есть доступ к глобальному диспетчеру служб, так какКонфигурационный массив зарегистрирован как сервис с именем Config
. (обратите внимание на верхний регистр C
.)
Возвращает массив объединения application.config.php (глобального и локального) и вашего module.config.php.После этого вы можете получить доступ к элементам массива так, как вам нужно.
Несмотря на то, что ОП уже устарел, я надеюсь, что это сэкономит кому-то час или больше, которые понадобились мне, чтобы получить этот ответ.