【问题标题】:reading docx (Office Open XML) in PHP在 PHP 中阅读 docx (Office Open XML)
【发布时间】:2010-12-02 20:44:45
【问题描述】:

我想在我们的 CMS 中添加一个单词导入功能,唯一的问题似乎是找不到一个好的库来读取 docx 文件(Word 2007)。

有没有人有一些建议,该库应该能够提取文档的内容和基本样式,如斜体、粗体、上标?

感谢您的帮助

【问题讨论】:

    标签: php import ms-word office-2007


    【解决方案1】:

    有一个库可以做到这一点,但它适用于 Zend 框架 可能会对您有所帮助 它被称为 phpLiveDocxhttp://www.phplivedocx.org/downloads/ 该库在 New Bcd 下获得许可

    【讨论】:

      【解决方案2】:

      这是我找到的一个简单可行的解决方案

      http://webcheatsheet.com/php/reading_the_clean_text_from_docx_odt.php

      【讨论】:

        【解决方案3】:

        PHPDocX PRO 包含一个 TransformDoc 类,可以读取 .docx (zip) 文件并从中生成 XHTML(或 PDF):

        ...
        require_once 'phpdocx_pro/classes/TransformDoc.inc';
        $doc = new TransformDoc();
        $doc->setStrFile($file->filepath);
        $doc->generateXHTML();
        $html = $doc->getStrXHTML();
        

        【讨论】:

          【解决方案4】:

          使用OpenOffice 将 docx 文档转换为 odt。然后使用eZ Components 进行解析和导入。他们实际上在他们的 CMZ eZ Publish 中使用了导入。

          【讨论】:

            【解决方案5】:

            我刚刚在 codeplex forge http://openxmlapi.codeplex.com 上找到了一个同时支持读写的库,它是在 GPLv2 下获得许可的。

            【讨论】:

              【解决方案6】:

              或者,由于您请求了一个库,您可能想要查看Docvert 之类的内容。我只是根据您的问题环顾四周,到目前为止,它是我最喜欢的 PHP。您输入单词文件位置,它会将其转换为带有属性和所有好东西的简单内容。

              【讨论】:

              • 看起来很有希望,但我必须为它制作一个 API。
              【解决方案7】:

              docx 文件实际上只是文档 XML 的容器。您应该能够解压缩 docx 文件,然后转到里面的 word 文件夹,然后转到 document.xml。这有实际的文字。但是诸如字体和样式之类的东西在 docx 容器中的其他 xml 文件中,所以你可能想弄乱一点,弄清楚什么是什么以及如何匹配它(从使用命名空间开始,我敢打赌)。

              但是,是的,解压缩文件,然后使用 simplexml 将其转换为您可以实际使用的东西。

              【讨论】:

              • 谢谢,但我想知道是否有人没有提供图书馆来做到这一点。如果我真的需要,我会做一些 XSLT 处理。
              • 查看我的其他答案。我唯一不喜欢它的是缺乏易于找到的 API
              • 类 TbsZip 可以读取(甚至编辑)zip 存档的内容,而无需任何依赖或任何临时文件。 XML 分析可以使用其他几种工具来完成。
              猜你喜欢
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2021-11-28
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              相关资源
              最近更新 更多