当单数和复数形式相同时,如何使用php-gettext的ngettext()?

问题描述 投票:2回答:1

我正在使用库php-gettext解决在Google Cloud AppEngine上缺少的php-gettext扩展名。当单数和复数形式的英语相同但其他语言不同时。

gettext

西班牙语翻译为

ngettext("%d correct", "%d correct", $n)

指示给出的正确答案的数量。

但是这给我一个错误,因为单数"%d correcto" (singular) "%d correctos" (plural) 与复数msgid完全相同。甚至允许在翻译中添加上下文的函数msgid也无法解决问题:

dngettext()

它在dngettext("Number of correct answers", "%d correct", "%d correct", $n) 库中触发警告和错误:

gettext

我将英语句子用作PHP Notice: Undefined offset: -1 PHP Parse error: syntax error, unexpected '!=' (T_IS_NOT_EQUAL) PHP Notice: Undefined variable: number PHP Warning: Missing argument 4 for gettext_reader::npgettext() ,现在无法将我的整个项目更改为使用加密ID,例如类似的东西

msgid

使用原始语言处理相同单数和复数形式的适当方法是什么?

php gettext php-gettext
1个回答
0
投票

刚刚发现它实际上是gettext库中的一个已知错误:ngettext("%d-correct-singular", "%d-correct-plural", $n)

您需要手动修复此错误才能正确使用ngettext函数。

此问题与一般的gettext扩展无关。

© www.soinside.com 2019 - 2024. All rights reserved.