php html word_实例详解PHP中html word 互转的方法

下面一段代码给大家介绍php将html转入word中,具体内容如下所示:

这是经过测试的,这种方法有一点不好,html页面代码要写在php中,不过好歹能运行,看程序

class word{

function start(){

ob_start();

echo '

xmlns:w="urn:schemas-microsoft-com:office:word"

xmlns="http://www.w3.org/TR/REC-html40">';

}

function save($path)

{

echo "";

$data = ob_get_contents();

}

function wirtefile($fn,$data){

$fp=fopen($fp,$data);

fwrite($fp,$data);

}

}

$html='

姓名性别年龄爱好备注
张三32足球

李四

43篮球

';

//批量生成

//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();

//}

?>

下面给大家分享一段代码php实现word转html的方法

要想完美解决,office转pdf或者html,最好还是用windows office软件,libreoffice不能完美转换,wps没有api。

先确认com模块是不是开启,phpinfo里面如果有com_dotnet模块,说明已开启,如果没有,修改php.ini,

代码如下:

com.allow_dcom = true

前面的注释去掉,重启就OK了,php官方网站说,php5.4.5之前,com模块是内置的,其实也不一定全是,官网下的php 5.3.39,com模块就没有内置。

如果不是内置模块的话,php.ini加上,前提你的ext文件夹下,有该扩展

代码如下:

extension=php_com_dotnet.dll

然后重启就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');

注意:

1. 转换出来的html,查看源码,比较乱的

2. 转换过程中会调用winword.exe

3. 如果页面一直在加载,把文档重命名,然后在重新转。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值