使用PHP生成Word文档

18

你知道有没有一种不需要使用COM组件的方法,用PHP生成docdocx文件?我尝试过使用PHPWord创建docx文件,但是这些文件不能在OpenOffice中打开,因为它会导致崩溃。我还尝试过PHPDocx,但它根本没有生成任何文件。


使用PHP在Linux中创建Word文档 - Gordon
2
不要放弃PHPDocx。它看起来是一个不错的软件包。 - Pekka
1
不要放弃PHPWord,因为有大量的工作正在进行中。并非所有版本的OO都能读取docx文件,您确定您的版本可以吗? - Mark Baker
PHPDocx是需要付费的。没有机会! - Matt Fletcher
4个回答

7

不错啊,伙计 :) - 911madza

7

OpenTBS可以使用模板技术在纯PHP中生成Docx文档。

非常简单。


6

请看这里:

http://www.webcheatsheet.com/php/create_word_excel_csv_files_with_php.php

引用文章中最常见的方法:

使用HTTP头部

使用这种方法,你需要使用适合于 Word 的 CSS 格式化 HTML/PHP 页面,并向 PHP 脚本添加头信息。确保不要使用外部样式表,因为所有东西都应该在同一个文件中。

结果用户将被提示下载一个文件。这个文件并不是 100% 的“原始”Word 文档,但它肯定会在 MS Word 应用程序中打开。你可以在 Unix 和 Windows 环境下都使用这种方法。

<?php
  header("Content-type: application/vnd.ms-word");
  header("Content-Disposition: attachment;Filename=document_name.doc");    
  echo "<html>";
  echo "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=Windows-1252\">";
  echo "<body>";
  echo "<b>My first document</b>";
  echo "</body>";
  echo "</html>";
?>

25
这是垃圾内容,请不要再继续复制粘贴。发送一些伪造的HTTP头信息以及一些HTML输出,并不能使其成为Word文档。这可能会欺骗浏览器将其传递给Word进行隐式转换。新版本至少会发出警告。而任何商业级别的防火墙都很可能会阻止此类粗糙的解决方法。 - mario
@mario - 注意这是四年前的内容,也是您标记的重复链接答案的一部分。我同意您的一些摘要,但请注意garbage可能是夸张之词。 - SW4
抱歉用词有些强烈。但是这段代码样例一直在误导新手提问。我已经关闭了该主题,并在主要的重复问题中进行了澄清。 - mario
非常感谢让我的生活变得更加轻松。 - Kartik Arora

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接