1

我有一个dBase III文件,里面的中文是用Big5编码的。在 PHP ODBC 的帮助下,我可以从 dBase 文件中检索/插入记录。

但是,我无法正确显示中文单词(Big5)。

当我使用 mb_detect_encodingfunction 检测那些中文单词时,它显示为“UTF-8”。我猜 odbc 以“UTF-8”而不是原始编码(ASCII/Big5)的形式转储数据。

我想问一下,我怎样才能正确显示单词?非常感谢你的帮助。我为这个问题苦苦挣扎了 2 天。

4

1 回答 1

0

您要确保源和显示均采用 UTF-8 格式,并且所有涉及数据的内容均采用 UTF-8 格式设置。

从你最确定的开始:检查数据库编码。您可以设置服务器范围的编码、数据库编码、表编码和列编码

接下来,检查处理它的 php .php 源文件本身应该是 UTF-8,标题和内容类型字符集等都应该设置为 UTF-8。

如果您将数据发送到其他地方,例如 javascript 或其他 php 页面进行处理,您还需要检查它们。小心任何外部库或流读取器/写入器,它们的编码无法由您控制。您与数据库建立的连接也可能会改变编码。

一旦您确定输出是 UTF-8 格式,您需要确保浏览器以 UTF-8 格式显示。您需要告诉浏览器这个网页的编码是什么,浏览器在标题定义中读取它。

祝你好运!

于 2012-11-08T04:05:34.727 回答