0

Я использую плагин ресурсов приложения в INI-файл, чтобы настроить мой Zend_Translate с этим кодом:Zend_Translate, настроить журнал через плагин ресурса приложения?

resources.translate.data = APPLICATION_PATH "/../languages" 
resources.translate.adapter = "gettext" 
resources.translate.options.scan = "directory" 

Теперь я хотел бы добавить функциональность журнала на перевод, который в загрузчике я хотел бы сделать, как это:

$writer = new Zend_Log_Writer_Stream(APPLICATION_PATH . '/../logs/translate.log'); 
$log = new Zend_Log($writer); 
$translate->setOptions(
       array(
        'log'    => $log, 
        'logUntranslated' => true 
       ) 
      ); 

2 вопроса по этому поводу: во-первых, возможно ли это в INI-файле?

Во-вторых, можно «расширить» настройки ресурсов в бутстрапе? Другими словами, могу ли я добавить, например, этот параметр журнала в бутстрап для перевода, сохраняя другие настройки, уже сделанные в файле .ini?

ответ

0

Хорошо, я не нашел решение этого в ini-файле, но я нашел способ «расширить» мои настройки из ini-файла в загрузочном блоке, не перезаписывая их. Мне удалось это сделать следующим образом:

protected function _initTranslate() 
{ 

    $writer = new Zend_Log_Writer_Stream(APPLICATION_PATH . '/../somedir/somefile.log'); 
    $log = new Zend_Log($writer); 

    // get the translate resource from the ini file and fire it up 
    $resource = $this->getPluginResource('translate'); 
    $translate = $resource->getTranslate(); 

    // add the log to the translate 
    $translate->setOptions(
      array(
       'log'    => $log, 
       'logUntranslated' => true 
      ) 
     ); 


    // return the translate to get it in the registry and so on 
    return $translate;  

} 

Это работает просто отлично. Я собираюсь удалить перевод с .ini, хотя, поскольку я перехожу на свой собственный адаптер и не знаю (пока), как снять это с ini.

 Смежные вопросы

  • Нет связанных вопросов^_^