我应该知道如何让我的I18N应用程序使用日语?

Bor*_*éry 6 php utf-8 utf-16 gettext internationalization

我正在制作一个I18N应用程序,它将使用日语,我不懂日语,我首先想知道utf8是否足以支持该语言.

通常,对于欧洲语言,utf8就足够了,我要设置我的数据库charset/collat​​ion以使用utf8_general_ci(在MySQL中)和我在utf8中的html视图,这就足够了.

但是日本人呢,还有别的事可做吗?

顺便说一句,我的应用程序将能够处理英语,法语,日语,但稍后,可能需要添加一些语言,比方说,俄语.

如何设置我的I18N应用程序以便在不必更改部署配置的情况下广泛使用?

有没有最好的做法?

顺便说一下,我打算使用gettext,我很确定它支持这些语言没有任何问题,因为它几乎是所有GNU软件的事实上的标准,但任何反馈?

Mic*_*rdt 5

几点:

  • UTF-8适用于您的应用内部数据,但如果您需要处理用户提供的文档(例如上传),那些可能会使用其他编码,如Shift-JIS或ISO-2022-JP
  • 日语文本不使用单词之间的空格.如果您的应用需要在某处将文本拆分为单词,那么您就遇到了问题.
  • 除文本外,日期和数字格式也不同
  • 通用排序规则可能不会导致日语文本的有用排序顺序 - 如果您的应用程序涉及人们必须查找内容的大型列表,这可能是一个问题.

  • @Boris:好吧,如果你垂直写日文或中文,那么就行了. (2认同)