现代网络上最棘手的问题之一是国际化问题,通常缩写为i18n(“ i”,然后是18个字母,然后是“ n”)。 万维网确实符合其名称,即使您的站点有本地访问者,您仍然可能会发现自己处理外来字母,无论是用德国标点符号还是外语引号来命名。
外国字符问题的最终解决方案是Unicode,这是一个真正巨大的标准,它试图记录和提供人类已知的每种语言中几乎每个字符的编码,并为将来的语言开发留出空间。 Tim Bray的论文On Unicode是理解Unicode的一个很好的起点。 如果那让您渴望更多,Joel Spolsky的《绝对最低限度每个软件开发人员绝对,肯定必须了解Unicode和字符集(无借口!)》也很适合阅读。
因此,现在您了解了i18n问题的基础,如何在自己的网络工作中解决它? 值得庆幸的是,W3C拥有两个关于此主题的有用文档,作为其XHTML和HTML国际化创作技术系列的一部分: 字符和编码1.0和指定内容的语言 。 不要被冗长的标题或大量的序言所拖延; 这些文件的内容是一组非常容易遵循的准则。 Jukka Korpela的字符代码问题教程是有关该主题的另一个极好的资源。
最后一点,如果您希望将Unicode与PHP一起使用,您可能会发现Keith Devens 关于该主题的笔记非常有用。 而且,如果您要测试Web应用程序的字符编码意识,请尝试将测试从Sam Ruby的Survival指南粘贴到i18n 。