当我调用方法$ translator-> translate('My String')时,有没有办法在Zend_Translate中使用“context”或“msgctxt”?
我需要将要翻译的项目分类为特定的上下文,例如:
我需要使用上下文来解决翻译项之间的歧义。
目前我正在使用PoEdit软件和Zend_Translate来翻译我的项目。
由于
答案 0 :(得分:0)
我也在搜索这个,Zend_Translate
似乎不支持翻译环境。
您可以尝试扩展主Zend_Translate
类,并将翻译上下文实现为某种类型的前缀,该前缀会自动与要翻译的句子一起使用,例如:
$translate->translate($context, $sentence);
将在内部进行管理
parent::translate("$context|$sentence");
和
$translate->translate($context, array($singular, $plural, $num));
将是
parent::translate(array("$context|$singular", "$context|$plural", $num));
但这需要在翻译源中包含带前缀$context
的字符串。