PHP writeexcel and UTF-8 support


PHP writeexcel and UTF-8 support

你们中有人使用过php_writexcel吗(http://www.bettina-attack.de/jonny/view.php/projects/php_writeexcel/)?

我想知道是否有一种简单的方法来支持utf-8。php_writexcel将html导出到Microsoft Excel文档,但它不能显示某些字符:

http://pastebin.com/AgVpph7F

也许我可以用一些php函数来解决这个问题?

谢谢你的帮助!

对于具有特殊字符(例如法语)的字段,我使用utf8_decode()来正确显示特殊字符。

Php_writeexcel是Perl模块Spreadsheet::writeexcel的端口。但是,该端口来自基础Excel文件格式不支持Unicode字符串的时代。

Spreadsheet::WriteExcel的后续版本(2.xx)对Unicode有本机支持,但尚未移植到PHP。

因此,您将无法使用php_writexcel处理Unicode字符串。

这不是一个完美的解决方案,但iconv会转换其中的一些字符。

http://www.php.net/manual/en/function.iconv.php

根据您希望如何处理不支持的字符:

iconv('UTF-8', 'ISO-8859-1//IGNORE','ėčščįęščūųüó');

输出:üó

iconv('UTF-8', 'ISO-8859-1//TRANSLIT','ėčščįęščūųüó');

输出:??????????üó