如何使用php com将unicode数据导出到word文档中

时间:2016-07-26 07:05:39

标签: php unicode character-encoding com

我正在使用Php COM导出unicode数据。我已在我的网页顶部写下以下内容:

<meta http-equiv='Content-Type' content='text/html; charset=utf-8'>

但是当我使用Php COM将unicode数据导出到word文档中时,它并没有像unicode那样正常运行,Instood它将如下所示:

ಆದಿಯಲà³à²²à²¿ ದೇವರೠಆಕಾಶವನà³à²¨à³

我使用Php COM代码将数据导出到word文档,如下所示:

$unicode_data = "ಆದಿಯಲ್ಲಿ";
$word = new variant(com_get_active_object("word.application"));
$word->Selection->TypeText($unicode_data);

所以请建议我在上面的代码中应包含哪些内容,以便在word文档中以正确的格式获取unicode。

(来自评论)

CREATE TABLE kan (
    id int(15) NOT NULL AUTO_INCREMENT, 
    content text CHARACTER SET utf8 NOT NULL, 
    PRIMARY KEY (id)
) ENGINE=MyISAM AUTO_INCREMENT=31105 DEFAULT CHARSET=latin1

1 个答案:

答案 0 :(得分:1)

你想要一些Kannada文字,比如'ಆದಿಯಲ...'?

你不应该在任何地方提到“unicode”。

您的'meta'和连接看起来是正确的。

请转到Trouble with utf8 characters; what I see is not what I stored并查看推荐的SELECT .. HEX。十六进制看起来像这样(但没有空格)?

E0B286 E0B2A6 E0B2BF E0B2AF

如果是,则存储正确。如果没有,那么你有“双重编码”,而十六进制将更像是

C3A0 C2B2 E280A0 C3A0 C2B2 C2A6 C3A0 C2B2

utf8 E0B286是Unicode 3206 = x0C86代表[ಆ] KANNADA LETTER AA