#zend-framework
#zend-framework
Вопрос:
Я поместил это в свой файл application.ini:
contact.email.address = "my.mail@bla.org"
contact.email.name = "Test Name"
Затем в моем действии index controller я выполнил:
$configOptions = $this->getInvokeArg('bootstrap')->getOptions();
$contactAddress = $configOptions->contact.email.address;
$this->view->contact = $contactAddress;
На мой взгляд, у меня есть:
var_dump($this->contact);
но я получаю NULL.
Чего я не понимаю?
Ответ №1:
В вашем контроллере, я думаю, вы хотите:
$configOptions = $this->getInvokeArg('bootstrap')->getOptions();
$contactAddress = $configOptions['contact']['email']['address'];
$this->view->contact = $contactAddress;
Комментарии:
1. Или:
$configOptions = new Zend_Config($this->getInvokeArg('bootstrap')->getOptions());
и затем:$configOptions->contact->email->address;
— мои плохие синтаксические ошибки … :((2. Хорошо, я обычно создаю этот
Zend_Config
экземпляр во времяBootstrap
и сохраняю его где-нибудь, чтобы я мог получить к нему доступ позже, используя более чистый синтаксис, который вы определяете здесь.3. Да, я обычно сохраняю экземпляр Zend_Config, используя Zend_Registry
Ответ №2:
Вы можете использовать:
$configOptions = new Zend_Config($this->getInvokeArg('bootstrap')->getOptions());
$contactAddress = $configOptions->contact.email.address;
$this->view->contact = $contactAddress;