PHPWord中文乱码
我在 使用PHPWord$section->addText(),输出中文是遇到乱码,PHPWord 中文乱码解决如下:
第一步:打开phpword/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);
注意:如果页面是utf-8编码直接注释就解决了中文编码问题,但是ansi编码,你就要用iconv转换了
在输出的时候:
$section->addText(iconv('utf-8', 'GB2312//IGNORE', 'PHP点点通<phpddt.com>'),);
在输出的字符编码字符串后面加上"//IGNORE",可以忽略不能转换的字符,减少Noitce错误。
php生成word的方法:
直接上代码:定期更新吧
vendor('PHPWord'); $PHPWord = new \PHPWord(); $section = $PHPWord->createSection(); $section->addText('Hello world!'); $section->addText('Hello world! I am formatted.', array('name'=>'Tahoma', 'size'=>16, 'bold'=>true)); $PHPWord->addFontStyle('myOwnStyle', array('name'=>'Verdana', 'size'=>14, 'color'=>'1B2232')); $section->addText('Hello world! I am formatted by a user defined style', 'myOwnStyle'); $section->addImage('1fccd5e6d986ca920c082c69e889e74b.jpg'); $objWriter = \PHPWord_IOFactory::createWriter($PHPWord, 'Word2007'); $objWriter->save('helloWorld.docx');
☜☞梦想总是要有的,万一实现了呢☜☞