История о том, как достучаться до данных, которые находятся в application.ini
Часто возникает необходимость в том, чтобы извлечь данные из конфигурационного файла application.ini. Используйте Zend_Application для того, чтобы считать данные из application.ini и в дальнейшем извлечь при помощи метода getOptions().
Теперь у вас есть несколько способов, которыми вы можете воспользоваться для того, чтобы извлечь данные.
Внутри контроллера вы можете получить доступ к данным application.ini вот так:1 public function someAction()
2 {
3 $bootstrap = $this->getInvokeArg('bootstrap');
4 $options = $bootstrap->getOptions();
5 }
Извне контроллера вы можете доставать данные следующим образом:1 $bootstrap = Zend_Controller_Front::getInstance()->getParam('bootstrap');
2 $options = $bootstrap->getOptions();
Фишка в том, что теперь у нас в $options содержится самый настоящий массив, а не объект Zend_Config. Для того чтобы взаимодействовать непосредственно с объектом Zend_Config, то вам самим придётся его проинициализировать. Одним из самых простых способов будет создание метода в bootstrap, который создаст объект Zend_Config и размещать в хранилище.1 protected function _initConfig()
2 {
3 $config = new Zend_Config($this->getOptions());
4 Zend_Registry::set('config', $config);
5 return $config;
6 }
Теперь вы можете получить конфигурационные данные из любой части программы. Однако на Zend_Registry не следует сильно налегать.