Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/287.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP OOXML库?_Php_Docx_Openxml - Fatal编程技术网

PHP OOXML库?

PHP OOXML库?,php,docx,openxml,Php,Docx,Openxml,一位客户要求我为他正在运行的webapp构建一个模块,该模块可以加载docx文件并根据文档中的标题提取数据。我知道docx只是一个zip文件,我需要的大部分内容都可以在word/document.xml中找到,尽管我并不期待解析列表/样式/图像/表格以及任何其他需要从OOXML转换为HTML的内容 有这种格式的PHP库吗?不过,我确实需要一些灵活性:仅仅是一个OOXML到HTML的转换器是无法解决问题的,我需要将文档分成几个部分。Codeplex有许多库,可以用于MS Office文档:

一位客户要求我为他正在运行的webapp构建一个模块,该模块可以加载docx文件并根据文档中的标题提取数据。我知道docx只是一个zip文件,我需要的大部分内容都可以在word/document.xml中找到,尽管我并不期待解析列表/样式/图像/表格以及任何其他需要从OOXML转换为HTML的内容


有这种格式的PHP库吗?不过,我确实需要一些灵活性:仅仅是一个OOXML到HTML的转换器是无法解决问题的,我需要将文档分成几个部分。

Codeplex有许多库,可以用于MS Office文档:


除了PHPExcel,我不知道这些项目有多成熟。如果没有任何帮助,您仍然可以使用。

如果是纯docx,您可以尝试。。。不知道它是读还是只写。还没有读,只写(尽管我正在努力)

如果您只需要属性信息,那么您将在zip中的/docProps/core.xml文件中找到所有信息(可能在/docProps/app.xml中,具体取决于您需要哪些属性),因此您可以绕过大多数包含文本、样式、图像等的文件来验证文件名,[内容类型].xml将核心和应用程序属性文件的文件名保存为application/vnd.openxmlformats officedocument.spreadsheetml.sheet.main+xml和application/vnd.openxmlformats officedocument.extended properties+xml

编辑: 如果需要标题,则需要解析文档,而不仅仅是属性。这将意味着识别标题样式,并解析具有这些样式的实体的文本。

可以使用模板技术在PHP中读取和修改DOCX(以及其他OpenXML文件)文档。 无需临时文件,无需命令行,全部用PHP编写

但是如果您只需要读取DOCX文件的一部分,那么就可以使用该类。它可以读取zip归档文件(与任何OpenXML文件一样,DOCX是一个主要包含XML文件的zip归档文件)

在DOCX文件中,页眉和页脚子文件通常是“/word/header1.xml”和“/word/footer1.xml”。 仅当定义了页眉/页脚时,它们才存在。 对于奇数页(通常为“/word/header2.XML”和“/word/footer2.XML”),也可能有一对可选的XML子文件。 以及第一页的可选两个子文件(通常为“/word/header3.xml”和“/word/footer3.xml”)


您也可以使用此库 并通过php java桥连接它们 -安装tomcat服务器 -将java桥放在webapps文件夹中,并添加poi库 -然后可以使用这些库提取标题样式。 API有很好的文档记录,您有很多选择。
这样做的PHP库会更好,但是如果它适合您或其他人,您可以尝试这种方法

我需要所有适当的样式,只需要根据找到的标题分解文档。我只需要阅读,不需要写作。。。而phpdocx只写。对编辑的响应:我知道我需要解析文档;)我只是想找一些能让我更容易做到的图书馆。最好是将文档中翻译成html内容的部分传递给用户。除了我提到的两个,我不知道还有其他PHP库可以使用docx格式的文件。如果您需要自己开发,我可以向您指出有关格式的文档:如果您找到任何读者库,请共享。运行Word的Windows服务器总是有回退选项,使用PHP是通过COM实现的+1并接受提及并花时间/精力回复。对不起,我帮不上忙了。。。我正在用PHPWord开发MSWord文件的纯PHP解决方案,但在日常工作和现实生活中,以及我的其他自由/开源软件项目PHPExcel和PHPPowerpoint中,这需要时间