【发布时间】:2011-04-13 22:37:57
【问题描述】:
虽然开发服务器上的翻译工作正常,但我们在生产服务器上收到以下通知:语言“fr”没有可用的翻译。
这是引导程序中的翻译配置(强制测试区域设置):
$locale = "fr_CA.utf8";
$translate = new Zend_Translate(
array(
'adapter'=>'gettext',
'content' => APPLICATION_PATH . '/lang',
'locale' => $locale,
'scan' => Zend_Translate::LOCALE_DIRECTORY,
'disableNotices' => false,
'clear' =>true,
'reload'=>true,
)
);
.mo 文件位于 APPLICATION_PATH/lang/fr_CA.utf8/LC_MESSAGES/messages.mo
.mo 文件中有翻译的字符串,并且两个服务器上都存在语言环境,根据“locale -a”。
任何关于为什么这样的设置可以在一台服务器上运行而不是另一台服务器的线索?
编辑:
我让它与以下配置一起工作:
$translate = new Zend_Translate(
array(
'adapter'=>'gettext',
'content' => APPLICATION_PATH.'/lang/'.$locale.'/LC_MESSAGES/messages.mo',
'locale' => $locale,
'disableNotices' => true,
'clear' =>true,
'reload'=>true,
)
);
扫描似乎无法正常工作。
【问题讨论】:
标签: zend-framework zend-translate