项目:问卷需求:从WORD导入问卷背景:运行中有上百份WORD格式的问卷。如果去后台手动输入,无疑工作量会很大,希望直接导入。心情:接到需求后,百感交集,因为之前做过excel导入,也有现成的插件,代码也是一搜一堆。导入这个词无疑涉及到知识盲点,但是需求摆在那里,我也斗不过产品同学!我只能硬着头皮上了。难点:Word阅读内容不太好,阅读时内容结构不合理。解题思路:先看WORD,再说怎么构造。读WORD:一开始,我想过用PHPWORD。毕竟像PHPOFFICE这么成熟的插件应该是可以直接读取WORD的内容的。然而,现实很骨感。找遍了整个文档,没有找到直接读取WORD内容的方法。PHPWORD只提供了将WORD转换成HTML和TDF的方法。转换思路:既然看不懂WORD,那我就看HTML,只要将WORD转换成HTML,再看HTML内容即可。代码:load(storage_path('测试.docx'));$write=new\PhpOffice\PhpWord\Writer\HTML($result);$write->save(storage_path().'/测试.html');//读取HTML内容$document=new\DOMDocument();$document->loadHTML(file_get_contents(storage_path('test.html')));$html=simplexml_import_dom($document);dd((数组)$html->body);}}开始测试:newtest.docxtest.docx内容:执行脚本:phpartisanword结果:
