Zend framework 使用Zend_Translate处理标点符号

Zend framework 使用Zend_Translate处理标点符号,zend-framework,zend-translate,punctuation,Zend Framework,Zend Translate,Punctuation,目前,我正在尝试将Zend_Translate应用到我正在从事的项目中。常规文本工作得非常好,但我遇到了形式翻译的问题 翻译适配器在Zend_注册表中注册,使用Zend_Translate作为键。这在大多数情况下都可以正常工作,但在显示表单之前应该进行翻译的情况除外 代码示例: $subformBusiness->setLegend(_('Bedrijfsgegevens') . ':'); $subformBusiness->setLegend(_('Bedrijfsgegeven

目前,我正在尝试将Zend_Translate应用到我正在从事的项目中。常规文本工作得非常好,但我遇到了形式翻译的问题

翻译适配器在Zend_注册表中注册,使用Zend_Translate作为键。这在大多数情况下都可以正常工作,但在显示表单之前应该进行翻译的情况除外

代码示例:

$subformBusiness->setLegend(_('Bedrijfsgegevens') . ':');
$subformBusiness->setLegend(_('Bedrijfsgegevens'));
假设“Bedrijfsgevens”在相应的翻译源文件中被翻译,则上行将输出为“Bedrijfsgevens:”,而下行将输出“业务信息”

据我所知,有三种方法可以解决这个问题。可以通过在将存储的Zend_Translate_适配器与冒号连接之前调用它来解决这个问题,但这会产生大量不必要的代码。另一种选择是在翻译文件中加入标点符号,但这意味着每种标点符号都应该有一个翻译。第三个选项是简单地从图例中删除冒号,但这不是我想要的


我的问题:有没有办法告诉Zend_Translate忽略标点符号?

据我所知,Zend_Translate只对文字字符串有效,并且不包含任何标点符号功能。我要做的只是从图例中删除冒号(您的第三个选项),然后以某种方式添加它(例如,使用
:after
CSS属性)


希望这会有所帮助,

据我所知,Zend_Translate仅适用于文字字符串,并且不包含任何标点功能。我要做的只是从图例中删除冒号(您的第三个选项),然后以某种方式添加它(例如,使用
:after
CSS属性)


希望有帮助,

为什么不在字符串中添加标点符号呢?好的,您必须同时翻译“Legend”和“Legend:”,但这对我来说非常合适

例如:


你为什么不在字符串中加标点符号呢?好的,您必须同时翻译“Legend”和“Legend:”,但这对我来说非常合适

例如:


如果不连接冒号,它会不起作用吗$子人民币业务->设置图例('Bedrijfsgegevens:');这个中断会翻译吗?那会有用,但我不想添加“Bedrijfsgegevens”、“Bedrijfsgegevens”和“Bedrijfsgegevens:”。由于缺少另一种方法,我正在使用此方法,但我更希望使用更通用的方法。如果不连接冒号,它会不起作用吗$子人民币业务->设置图例('Bedrijfsgegevens:');这个中断会翻译吗?那会有用,但我不想添加“Bedrijfsgegevens”、“Bedrijfsgegevens”和“Bedrijfsgegevens:”。由于缺少另一种方法,我正在使用它,但我更喜欢使用更通用的方法。它可以工作,我也使用它,但我更喜欢使用过滤标点符号的方法。然后,您可能希望编辑Zend_Form_元素并创建一个自定义翻译方法来忽略/替换标点符号。PS:查找$this->getTranslator()引用。它可以工作,我也使用它,但我更愿意使用过滤标点的东西。然后您可能希望编辑Zend_Form_元素并创建一个自定义翻译方法来忽略/替换标点。PS:查找$this->getTranslator()引用。
$subformBusiness->setLegend(_('Bedrijfsgegevens:'));
$element->setLabel('This is a great label:');