【问题标题】:How to Create a word .doc file from a .doc template in php如何在 php 中从 .doc 模板创建 word .doc 文件
【发布时间】:2010-01-04 17:23:12
【问题描述】:

我需要从 word 模板创建一个 word 文档,类似于,我们需要用值替换模板中的几个字符串(比如变量)。

请告诉我们如何在 PHP(或 cakePHP)中做到这一点。

【问题讨论】:

    标签: php templates ms-word


    【解决方案1】:
    【解决方案2】:

    您将遇到的最大问题是.doc 格式本质上是二进制的(请参阅this questionthis post by Joel)。

    您是否有任何原因不能使用 HTML 格式的文档(哪个单词可以打开 10 多年)或Rich Text File?这两者都是基于文本的,并且会大大减轻您的痛苦。因此,它们非常易于与模板一起使用。

    或者,如果您可以确定用户将拥有更新版本的 Office (2007+),那么您可以使用 .docx 文档,虽然这有点棘手,但它实际上是一个 Zip 存档和 XML 数据.您可以通过创建一个包含您需要的模板的.docx word 文件,将其重命名为.zip,提取文件,教您的应用程序在这个就地文件结构上进行文本替换,来相当简单地实现这一点,重新使用PHP's ZipArchive class 压缩它,然后发送该文件(当然命名为.docx)。

    【讨论】:

      【解决方案3】:

      我认为这会对你有所帮助

      docxtemplater-master

      从模板生成 docx, https://github.com/edi9999/docxtemplater

      phpdocx

      用于动态生成 docx 格式的 Word 文档的 PHP 库。

      http://www.phpdocx.com/

      【讨论】:

        【解决方案4】:

        查看http://www.phpbuilder.com/annotate/message.php3?id=1024286 以及它的文章。

        当我需要生成一个简单的 Excel 表格时,我做了一个类似的技巧。发送正确的标头时,客户端的 excel 根本没有抱怨。或者,如果您可以直接使用其他格式,请使用它。 (.docx 或打开的文档是压缩的 xml,因此您可以更轻松地对其进行操作)

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2014-01-01
          • 1970-01-01
          • 2021-03-31
          • 2018-06-19
          • 1970-01-01
          • 2013-10-30
          • 2011-05-24
          相关资源
          最近更新 更多