【问题标题】:CakePHP Internationalization locale codesCakePHP 国际化语言环境代码
【发布时间】:2013-01-09 12:25:38
【问题描述】:

我在 CakePHP 1.3(但也适用于 2.0)中的语言环境代码有一些问题

我正在使用 3 个字母的语言代码,但有些代码不可用。例如,我想为澳大利亚设置aus。正如文档所说

三字符语言环境代码符合 ISO 639-2 标准,但如果您创建区域语言环境(en_US、en_GB 等),Cake 会在适当时使用它们。

aus 存在于 ISO 639-2 中,但不适用于 CakePHP。它保存 i18n 记录,但在显示内容时需要英文版本。放置 ISO 标准中不可用的代码时也会发生同样的情况。我也尝试过使用基于位置的代码en_AU,结果是一样的。

无论是否符合 ISO 标准,我都能使任何代码正常工作。这是因为站点管理员可以访问站点中的语言,我希望允许他使用任意字母组合作为语言代码。

还有如何获取澳大利亚的设置代码

【问题讨论】:

标签: cakephp localization internationalization multilingual


【解决方案1】:

您需要告诉 cake 您使用什么语言进行翻译。 您可以使用通用的 3 字母代码(如 eng)或更多特定位置的代码(如 en-US)。

在你的情况下:

Configure::write('Config.language', 'en-au')

注意破折号(https://github.com/cakephp/cakephp/blob/2.3/lib/Cake/I18n/L10n.php)。

然后文件夹将是 /APP/Locale/ 中的“en_au”

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-02
    • 1970-01-01
    相关资源
    最近更新 更多