Я пишу веб-сайт с использованием ZendFramework и решил использовать систему gettext для интернационализации своего контента.
По моему мнению, я пишу строку на французском языке и на данный момент предоставляю только один файл "en.mo" для перевода предложений на английский.
Я хотел бы избежать сохранения файла "fr.mo", который переводит только предложение в точно такое же предложение.
Есть ли способ сообщить Zend или gettext, что когда языковой стандарт - "fr" или "fr_FR", тогда нет необходимости искать файл перевода, и строка ключа должна просто возвращаться как есть?
Или, может быть, есть причина для создания файла «перевода идентичности» fr.mo?
Ключевые цитаты из моего кода на данный момент:
Извлечение моего бутстрапа:
protected function _initTranslations() {
$config = $this->getApplication()->getOptions();
Zend_Locale::setDefault('en'); // fallback if detection fails completely
$locale = new Zend_Locale();
if ( !in_array($locale->getLanguage(), explode(',',$config['available_translations']))) {
$locale->setLocale('en'); // requested language is not available => use english
}
$translate = new Zend_Translate(array( 'adapter' => 'gettext',
'content' => APPLICATION_PATH.'/../languages/gda-'.$locale->getLanguage().'.mo',
'locale' => $locale));
$translate->setLocale($locale);
$this->bootstrap('view');
$this->getResource('view')->getHelper('translate')->setTranslator($translate);
}
содержание / languages /:
gda-en.mo
gda-fr.mo <== this one I would like to avoid maintaining
спасибо