如何使用PHP将html转换为word?

时间:2016-11-16 09:20:34

标签: php

我正在尝试使用PHP脚本将 HTML转换为MS WORD文档(.doc / .docx)。使用来自互联网的可用脚本,我可以将HTML文本转换为doc。但我需要内联css的总html将在我的doc.I制作一个脚本

$html = file_get_contents('html path');
$tags = "<br>";
$test = strip_tags($page,$html);
$breaks = array("<br />","<br>","<br/>");  
$text = str_ireplace($breaks, "\r\n", $test);  
$text = iconv('UTF-8', 'ASCII//TRANSLIT',$text);
$handle = fopen("newdoc.doc", "w+");
fwrite($handle, $text);
fclose($handle);

它仅适用于HTML的文本内容。 但我无法添加图像有没有办法做到这一点?请帮助,提前致谢。

3 个答案:

答案 0 :(得分:23)

只需在页面顶部保留以下代码即可转换:

<? header("Content-Type: application/vnd.ms-word");
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("content-disposition: attachment;filename=Report.doc");
?>

答案 1 :(得分:4)

我强烈推荐PHPdocx,因为它完全符合您的要求,但需要付出代价。我之前购买它并经常使用它。

require_once 'pathToPHPDocX/classes/CreateDocx.inc';
$docx = new CreateDocx();
$html='http://www.2mdc.com/PHPDOCX/simpleHTML_Image.html';
$docx->embedHTML($html, array('isFile' => true, 'downloadImages' => true));
$docx->createDocx('simpleHTML');

http://www.phpdocx.com/documentation/introduction/html-to-word-PHP

答案 2 :(得分:2)

我目前正在处理类似的事情,并已经

网站上大量的信息可以帮助您入门,您可以根据自己的喜好设计每个元素的样式。

图片可以简单地添加:$section->addImage($src, [$style]);

我会看看。它比你目前使用的更多,但允许你做你需要的。