Ale*_*lex 8 php localization gettext poedit xgettext
我在我的应用程序中加入了类似gettext的本地化系统,但我的翻译功能如下所示:
t($category, $string, [$plural_string, $number, $vprintf_arguments])
Run Code Online (Sandbox Code Playgroud)
我的PoEdit关键字:
t:2
t:2,3
Run Code Online (Sandbox Code Playgroud)
$string,它显然有效$string而且$plural_string- 但它不是:(它只能看到$string,所以我没有得到解析的复数形式......我该如何解决?我不想将我的函数切换到不同的参数格式,因为我喜欢这个:(
此功能也像sprintf替换:
无论如何,PoEdit不应该干扰非引用的论点,对吧?我的意思是它只会解析$ plural_string作为字符串'abc abc'
小智 6
gettext一次只处理一个字符串.你可能会追求的是ngettext.(查找语法)
在那里,你会输入一个单数的文本,另一个用于复数,但也包括数字.
关于这一点的聪明之处在于,许多语言的复数结构与英语完全不同.例如,俄语使用三种不同的形式.一个是计数结束于一个明显的"一":1,21,31,41等.第二种形式是计数,以明显的2,3或4结束.第三种形式是其余的.. .
并且,使用ngettext,可以完成.是的,在poedit中,必须正确定义目标语言的复数结构,但是,它只是起作用.
http://www.gnu.org/s/hello/manual/gettext/Plural-forms.html
| 归档时间: |
|
| 查看次数: |
2924 次 |
| 最近记录: |