我正在尝试使用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的文本内容。 但我无法添加图像有没有办法做到这一点?请帮助,提前致谢。
答案 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]);