PHPWord写入Word文件乱码问题

首先文件名乱码。由于win系统的编码是gbk,所以可以用iconv转换为gbk格式,再进行保存,就可以解决文件名乱码的问题。

$objWriter->save(iconv("utf-8","gbk", "你好").'.docx');

然后是Word内容乱码,这个需要修改Section.php文件,将

$givenText = utf8_encode($text);

修改为

$givenText = iconv('gbk', 'utf-8', $text);

接着,在使用addText方法时,需要转换一下

$section->addText(iconv('utf-8', 'gbk', '需要保存的内容');

这样乱码的问题就都解决了。

如果您觉得本文对您有用,欢迎捐赠或留言~
微信支付
支付宝

2条评论

  1. 这种情况,如果php文件默认是ANSI格式的,写出去的我记得就是gbk的格式~有兴趣可以试试。

发表评论

您的电子邮箱地址不会被公开。 必填项已用 * 标注