我需要在我的应用程序中翻译表单错误消息。
该应用程序不是多语言的,它是斯洛伐克语(所以我已经用斯洛伐克语写了标签和东西),只需要翻译错误信息。
我在我的bootstrap文件中创建了这个方法:
protected function _initTranslate()
{
$this->translate = new Zend_Translate('gettext',
'/path/to/translation/source-sk.mo',
'sk');
Zend_Form::setDefaultTranslator($this->translate);
}
但是如何创建source-sk.mo文件?我是否需要从网上下载它?
答案 0 :(得分:1)
首先,您需要下载PoEdit software,然后您需要根据this post对其进行配置。
完成这些步骤后,您需要在PoEdit中创建一个新的目录文件。在创建对话框中,单击关键字选项卡,然后在代码中添加要扫描的函数名称。使用Zend Framework,这通常只是翻译,因为您可能正在使用 translate()视图助手。但是,您还需要包含 setLabel ,以便它也可以提取Zend_Form标签。
创建目录后,您需要扫描源代码以进行翻译。您可以通过点击目录菜单下的从资源更新来执行此操作。一旦完成扫描源代码,它将显示需要翻译的所有字符串的列表。然后,您可以在列表中输入每个字符串的翻译。现在将目录保存到ZF应用程序中的某个位置,最好是 / languages ,将Zend_Translate声明指向此位置,然后就可以了。
如果您稍后调整任何标签或字符串,您可以随时使用PoEdit重新打开目录,再次从源代码运行更新,它将提取所有新更改供您翻译。