开发系统ubuntu 我用phpword读word里面的英文是正确的,可是读中文的时候就出现了乱码,实在不知道怎么整,有用过phpword的大神们,麻烦赐教一下

解决方案 »

  1.   

    不要使用金山的word,使用微软的
      

  2.   

    1、/Writer/Word2007/Base.php文件内容349行,添加 $objWriter->writeAttribute('w:eastAsia', $font); // 添加这行
    2、Section.php中找到代码$givenText = utf8_encode($text);,删除或者注释掉这行代码,添加$givenText = iconv('gbk', 'utf-8', $text); 同时编辑PHPWord/Template.php,找到代码$replace = utf8_encode($replace);,删除或者注释掉这行代码,添加$replace = iconv( 'gbk','utf-8', $replace);
    3、我用的是section的addText,使用了iconv函数转换,如:
    $st = '阿狸爱桃子';
    $section->addText(iconv('utf-8','GB2312//IGNORE',$st));
    4、Done!不过也折腾了一上午才弄好的。