4

我已经zh_TW通过安装语言环境

sudo locale-gen --purge en_US.UTF-8 zh_TW

它的代码集是BIG5

locale: zh_TW           directory: /usr/lib/locale/zh_TW
-------------------------------------------------------------------------------
    title | Chinese locale for Taiwan R.O.C.
    email | bug-glibc-locales@gnu.org
 language | Chinese
territory | Taiwan R.O.C.
 revision | 0.2
     date | 2000-08-02
  codeset | BIG5

我有一个简单的 PHP 脚本

<?php

putenv('LC_ALL=zh_TW');
setlocale(LC_ALL, 'zh_TW');
bindtextdomain("myPHPApp", "./locale");
textdomain("myPHPApp");

echo gettext("hello");

我准备了一个 mo 文件(在UTF8中)并放在

./locale/zh_TW/LC_MESSAGES/myPHPApp.mo 

而且echo确实有效,那么安装诸如zh_TW.UTF-8之类的语言环境有什么意义

4

2 回答 2

2

安装 zh_TW.UTF-8 等语言环境有什么意义?

.[codeset]语言环境规范中的后缀点是指定一个代码集。对于特定语言,如果UTF-8是默认代码集,则不必显式指定它 - 只需指定即可zh_TW(但您也可以指定zh_TW.UTF-8)。如果您有可用的控制台,您可以通过 列出可用的语言环境locale -a

但请注意,这可能是系统特定的!虽然在 linux 上 zh_TW 默认为 UTF-8但在 IBM 上它将是 BIG5,在 Windows CP950 上!

于 2014-06-22T20:37:47.207 回答
2

根据我对中文的理解,它们每个都有两个不同的版本,即简体中文和繁体中文。通过指定 zh_TW 可能是在您的网页上显示繁体中文字符。由于 UTF-8 是在您的标头中定义的,并且默认情况下它支持两种中文,因此不再需要安装它们。

*附加信息 - 如果我没记错的话,如果中文字符要存储在数据库中的某个位置,您必须设置 zh_TW 的区域设置。

希望这可以帮助。

于 2014-06-24T04:13:57.963 回答