>  기사  >  백엔드 개발  >  PHP에서 HTML을 단어로 변환하는 방법에 대한 자세한 예

PHP에서 HTML을 단어로 변환하는 방법에 대한 자세한 예

不言
不言원래의
2018-06-05 14:51:503632검색

이 글에서는 주로 PHP에서 HTML 단어를 변환하는 방법에 대한 관련 정보를 자세히 소개합니다. 이 글에서는 이를 매우 자세하게 소개하며 참조 가치가 있습니다. 코드는 html을 단어로 변환하기 위해 php를 소개합니다.

이 방법은 테스트를 거쳤지만 html 페이지 코드는 php로 작성해야 하지만 실행할 수 있습니다. 어쨌든 프로그램을 참조하세요

<?php 
class word{
function start(){
ob_start();
echo &#39;<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">&#39;; 
}
function save($path)
{
echo "</html>";
$data = ob_get_contents();
}
function wirtefile($fn,$data){
$fp=fopen($fp,$data);
fwrite($fp,$data);
}
}
$html=&#39;
<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> 
&#39;;
//批量生成
//for($i=1;$i<3;$i++){
$word = new word();
$word->start();
$wordname=&#39;个人测试php生成word.doc&#39;;
echo $html;

$word->save($wordname);
header(&#39;Content-type:application/word&#39;);
header(&#39;Content-Disposition: attachment; filename=&#39;.$wordname.&#39;&#39;);
//readfile($wordname);
ob_flush();//每次执行前刷新缓存
flush();
//}
?>

단어를 HTML로 변환하는 PHP 코드를 공유하겠습니다

완벽한 솔루션을 원한다면 office를 pdf 또는 html로 변환하세요. Windows Office 소프트웨어를 사용하는 것이 가장 좋지만, WPS에는 API가 완벽하게 변환될 수 없습니다. 먼저 com 모듈이 켜져 있는지 확인하세요. phpinfo에 com_dotnet 모듈이 있으면 켜져 있다는 뜻입니다. 그렇지 않다면 php.ini를 수정하세요.

코드는 다음과 같습니다.

com.allow_dcom = true


이전 주석을 제거하고 다시 시작하면 괜찮습니다. 예, PHP 공식 웹사이트에는 PHP5.4.5 이전에는 COM 모듈이 내장되어 있다고 나와 있지만 실제로는 PHP 5.3.39에서는 그렇지 않을 수도 있습니다. 공식 웹사이트에는 COM 모듈이 내장되어 있지 않습니다.

내장 모듈이 아닌 경우 확장 폴더에 확장 기능이 있는 경우 php.ini에 추가하세요.

코드는 다음과 같습니다.


extension=php_com_dotnet.dll

그런 다음 다시 시작하면 문제가 없습니다.

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(&#39;D:/www/test/6.docx&#39;,&#39;D:/www/test/6.html&#39;);

참고:

1. 변환된 HTML의 소스 코드가 상당히 지저분합니다.

2. 변환 프로세스 중에 Winword.exe가 호출됩니다


3. 페이지가 계속 로드되는 경우 문서 이름을 변경한 후 다시 전송하세요.


위 내용은 PHP에서 HTML을 단어로 변환하는 방법에 대한 자세한 예의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.