【问题标题】:Localizing sentences本地化句子
【发布时间】:2011-02-18 05:27:48
【问题描述】:

我正在使用 gettext 本地化一个 PHP 项目……那部分没问题。问题是,例如,我有这句话“记住密码”。我可以输入下一个代码(使用gettext):echo _("Remember password")

这将在 PO 文件中生成一个带有“记住密码”键的行,我会将其在英文文件中翻译为“记住密码”,并在西班牙语网站中翻译为 MO 文件中的“记录密码”。

如果将来,我想更改该句子并输入英文“永远记住密码”(例如再次)......问题是关键“句子”将与英文翻译不同。

两种可能的情况:

1) 所以,如果我想干净,我可以再次更改密钥,并再次更改 PHP 代码,但这没有用。

2) 另一方面,我可以使用通用键,例如“登录页面 - 记住”,它可以用于将来任何稍微不同的句子。但这会过多地延长“本地化”的时间,因为它不如添加 _(" 和 ") 快

你用什么?还有其他第三种选择吗?

感谢您的cmets

【问题讨论】:

    标签: php localization gettext


    【解决方案1】:

    您几乎已经总结了您拥有的两个选项。请记住,如果句子在您的原始语言中发生变化,它可能也会在本地化版本中发生变化,所以无论如何您都必须触摸它的所有出现(除了拼写错误,所以不要做任何事情)。

    一个好的策略可能是在繁重的开发过程中将主要语言保留在 PHP 文件中,因为预计它会经常更改。一旦应用程序稍微稳定下来,您可以将其提取到 PO 文件中,并用通用占位符替换 PHP 中的字符串。这是否适合您取决于您​​的工作流程和项目的规模。

    【讨论】:

    • 我同意您在开发过程中应该坚持使用主要语言并保存本地化,直到应用程序更稳定为止。我曾在我们有多种语言选项的网站上工作过,保持 po 文件同步本身就是一项任务。
    猜你喜欢
    • 2015-09-25
    • 2014-06-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-31
    • 1970-01-01
    • 1970-01-01
    • 2017-05-21
    相关资源
    最近更新 更多