Home > Article > Backend Development > Detailed examples of how to convert HTML to word in PHP
This article mainly introduces the relevant information of the method of converting html word in PHP in detail, involving the relevant knowledge of converting html word in php. This article introduces it in great detail and has reference value
The following code introduces how to transfer html into word using php. The specific content is as follows:
This has been tested. There are some differences with this method. Okay, the html page code needs to be written in php, but it can run anyway, look at the program
<?php class word{ function start(){ ob_start(); echo '<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns="http://www.w3.org/TR/REC-html40">'; } function save($path) { echo "</html>"; $data = ob_get_contents(); } function wirtefile($fn,$data){ $fp=fopen($fp,$data); fwrite($fp,$data); } } $html=' <table width=600 cellpadding="6" cellspacing="1" style="border:1px solid green;" style="border-collapse:collapse"> <tr style="border:1px solid green;"> <td style="border:1px solid green;">姓名</td> <td style="border:1px solid green;">性别</td> <td style="border:1px solid green;">年龄</td> <td style="border:1px solid green;">爱好</td> <td style="border:1px solid green;">备注</td> </tr> <tr style="border:1px solid green;"> <td style="border:1px solid green;">张三</td> <td style="border:1px solid green;">男</td> <td style="border:1px solid green;">32</td> <td style="border:1px solid green;">足球</td> <td style="border:1px solid green;">无</td> </tr> <tr style="border:1px solid green;"> <td style="border:1px solid green;"> 李四 </td> <td style="border:1px solid green;">男</td><td style="border:1px solid green;">43</td><td style="border:1px solid green;">篮球</td><td style="border:1px solid green;">无</td> </tr> </table> '; //批量生成 //for($i=1;$i<3;$i++){ $word = new word(); $word->start(); $wordname='个人测试php生成word.doc'; echo $html; $word->save($wordname); header('Content-type:application/word'); header('Content-Disposition: attachment; filename='.$wordname.''); //readfile($wordname); ob_flush();//每次执行前刷新缓存 flush(); //} ?>
Let me share with you a piece of code php How to convert word to html
If you want a perfect solution to convert office to pdf or html, it is best to use windows office software. Libreoffice cannot convert perfectly, and wps does not have an API.
First confirm whether the com module is enabled. If there is a com_dotnet module in phpinfo, it means it is enabled. If not, modify php.ini.
The code is as follows:
com.allow_dcom = true
Remove the previous comment and restart and it will be OK. The official PHP website says that before PHP5.4.5, the COM module was built-in. In fact, it may not be all the way. In PHP 5.3.39 under the official website, the COM module is Not built in.
If it is not a built-in module, add it to php.ini, provided that your ext folder has the extension
The code is as follows:
extension=php_com_dotnet.dll
Then restart and it will be OK
function word2html($wordname,$htmlname) { $word = new COM("word.application") or die("Unable to instanciate Word"); $word->Visible = 1; $word->Documents->Open($wordname); $word->Documents[1]->SaveAs($htmlname,8); $word->Quit(); $word = null; unset($word); } word2html('D:/www/test/6.docx','D:/www/test/6.html');
Note:
1. The converted HTML, check the source code, it is quite messy
2. Winword.exe will be called during the conversion process
3. If the page keeps loading, reset the document Name it and re-transmit it.
The above is the detailed content of Detailed examples of how to convert HTML to word in PHP. For more information, please follow other related articles on the PHP Chinese website!