本文主要是介绍PHPword操作word问题汇总,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1.ZipArchive::getFromName(): Invalid or uninitialized Zip object
问题描述:在用 new \PhpOffice\PhpWord\TemplateProcessor('1.docx')进行模板替换时出现错误
问题原因:可能有多种原因造成:比如没打开php_zip.dll、或者php_zip.dll缺失……。
在排除以上各种原因后,本人遇到这个错误,原因大概是因为:phpword需要调用zip软件打开word,但服务器上没有安装zip软件(后来安装了,也没用,不知道是不是要重启,因为有程序正在运行,就没重启)
解决办法:调用php自带的zip服务
具体方法为:在调用模板前加上
\PhpOffice\PhpWord\Settings::setZipClass(\PhpOffice\PhpWord\Settings::PCLZIP);
将自带是PCLZIP替换需要的zip服务
\PhpOffice\PhpWord\Settings::setZipClass(\PhpOffice\PhpWord\Settings::PCLZIP);
$tmp= new \PhpOffice\PhpWord\TemplateProcessor($file);//打开模板
方法来源:参考文档
这篇关于PHPword操作word问题汇总的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!