Следующий код отлично работает в контроллере, как глобально?Zend 2 Translation global
XXXController.php
$lang = 'nl';
$loc = $this->getServiceLocator();
$translator = $this->get('translator');
$translator->addTranslationFile("phparray",'./module/admin/language/lang.array.'.$lang.'.php');
$loc->get('ViewHelperManager')->get('translate')->setTranslator($translator);
view.phtml
echo $this->translate('homepage');
awnser:
module.config.php
'translator' => array(
'locale' => 'it_IT',
'translation_files' => array(
array(
'type' => 'phpArray',
'filename' => './module/admin/language/lang.array.nl.php',
),
),
'translation_file_patterns' => array(
array(
'type' => 'gettext',
'base_dir' => __DIR__ . '/../language/mydomain',
'pattern' => '%s.mo',
),
),
),
Это уже было указано в конфигурации модуля. И сейчас? – Bas
Что и теперь? Это все. Когда вы настраиваете переводчик, просто возьмите сервис mvctranslator от servicemanager и используйте его. – venca
Мой вопрос состоял в том, как это сделать глобально, поэтому я хочу установить его один раз и использовать echo $ this-> translate ('xxxx'); в каждом представлении. Как я могу это сделать? – Bas