从PHP处理Microsoft Word Office 2007.docx文档

从PHP处理Microsoft Word Office 2007.docx文档,php,ms-word,docx,openxml,Php,Ms Word,Docx,Openxml,我需要PHP中的一个选项来操作.docx(MicrosoftOffice2007)文档 我需要: 阅读内部文本 转换为.html 在浏览器中查看它们 替换文本 我知道我可以使用Word自动化,创建Microsoft Word的COM对象,但它太慢、不稳定,我必须将其安装在服务器上 是否有任何库或代码可以从PHP执行此操作?PHPExcel的作者提供了相应的库或代码。Docx只是一个包含多个XML文件和嵌入媒体文件(如图像)的ZIP文件。因此,您可以轻松地阅读和编辑文档。只需解压缩它,打开word

我需要PHP中的一个选项来操作.docx(MicrosoftOffice2007)文档

我需要:

  • 阅读内部文本
  • 转换为.html
  • 在浏览器中查看它们
  • 替换文本
  • 我知道我可以使用Word自动化,创建Microsoft Word的COM对象,但它太慢、不稳定,我必须将其安装在服务器上


    是否有任何库或代码可以从PHP执行此操作?

    PHPExcel的作者提供了相应的库或代码。

    Docx只是一个包含多个XML文件和嵌入媒体文件(如图像)的ZIP文件。因此,您可以轻松地阅读和编辑文档。只需解压缩它,打开word/document.xml,读写,然后重新打包文件

    转换为HTML可能很困难。但是,您可以在docProps/thumbnail.jpeg中找到第一页的缩略图

    请注意,您必须熟悉XML结构才能进行任何复杂的编辑。有一个XML摘要docProps/app.XML,其中包含一些文件的元数据,所以不要忘记更新它。阅读维基百科的更多内容:

    你可以看看我相信它满足了你的所有要求

  • 您可以替换模板中的变量,也可以仅替换现有Word文档中的纯文本
  • 它提供了相当多的转换选项
  • 您还可以提取文本

  • 您可以直接使用内部格式

    DOCX只是一个zip文件,里面有word/document.xml,其中包含实际的文档

    解压文件、读取document.xml、str_replace()您要查找的内容、保存它并重新压缩目录非常简单,而且它为word文档提供了轻量级、快速和轻松的邮件合并功能。这也适用于其他办公格式


    以下是获取更多信息的示例。

    还有一个PHP类,用于将新内容合并到现有的.docx文件中。可在以下位置获取:。该文档非常好,并且有许多示例,而且都是免费的、开源的。不过,它确实需要熟悉.docx概念

    不幸的是,PHPWord目前只能编写Word2007 docx文件。我正在利用业余时间开发一个阅读器,但它可能在几个月内都不可用(PHPExcel目前还有太多其他需求)@Mark Baker:他似乎也在谈论docx,正如你所说,它目前只支持这一点:)Mark。它只是一个编写器,还是只用于docx?@aviv-目前,PHPWord只是一个编写器,并且只支持.docx文件。长期目标是为.doc、.docx甚至OpenOfficeWriter.odt格式提供读写功能。该体系结构允许轻松实现不同文件格式的新读写器,但它们仍然需要编码。目前我有一个部分编码的.docx阅读器;但我的重点仍然是更广泛使用的PHPExcel库,因此我可能需要一段时间才能完成它并将其纳入PHPWord版本code@avivCOM可能速度慢且不稳定(实际上还不错),但您也可以将COM与openofficewriter()结合使用,作为MSWord的替代方案;有了XPCOM或CORBA,就可以在其他平台上模仿COM了,这可不容易!我试过了,但很难生成正确的属性值。例如,我可以修改XML文件以将图像插入文档(word/document.XML、word/media/imageXX.jpg、word/_rels/document.XML.rels),但问题是属性的值!值得注意的是,它不是免费的