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


Posted in PHP onJanuary 28, 2016

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

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

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

下面给大家分享一段代码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. 如果页面一直在加载,把文档重命名,然后在重新转。

PHP 相关文章推荐
php实现网站插件机制的方法
Nov 10 PHP
PHP fopen()和 file_get_contents()应用与差异介绍
Mar 19 PHP
destoon找回管理员密码的方法
Jun 21 PHP
php中的curl_multi系列函数使用例子
Jul 29 PHP
php数组索引的Key加引号和不加引号的区别
Aug 19 PHP
PHP过滤黑名单关键字的方法
Dec 01 PHP
PHP中Http协议post请求参数
Nov 02 PHP
php实现数据库的增删改查
Feb 26 PHP
自制PHP框架之路由与控制器
May 07 PHP
PHP读取Excel类文件
May 15 PHP
PHP实践教程之过滤、验证、转义与密码详解
Jul 24 PHP
Laravel框架实现的使用smtp发送邮件功能示例
Mar 12 PHP
PHP Curl模拟登录微信公众平台、新浪微博实例代码
Jan 28 #PHP
PHP的压缩函数实现:gzencode、gzdeflate和gzcompress的区别
Jan 27 #PHP
PHP文件上传之多文件上传的实现思路
Jan 27 #PHP
PHP内核学习教程之php opcode内核实现
Jan 27 #PHP
PHP编程入门的基本语法知识点总结
Jan 26 #PHP
PHP数组游标实现对数组的各种操作详解
Jan 26 #PHP
PHP面向对象程序设计实例分析
Jan 26 #PHP
You might like
PHP 5昨天隆重推出--PHP 5/Zend Engine 2.0新特性
2006/10/09 PHP
落伍首发 php+mysql 采用ajax技术的 省 市 地 3级联动无刷新菜单 源码
2006/12/16 PHP
php面向对象全攻略 (四)构造方法与析构方法
2009/09/30 PHP
比较简单的百度网盘文件直链PHP代码
2013/03/24 PHP
解析CI即CodeIgniter框架在Nginx下的重写规则
2013/06/03 PHP
php多文件上传实现代码
2014/02/20 PHP
PHP导出Excel实例讲解
2016/01/24 PHP
thinkphp框架实现路由重定义简化url访问地址的方法分析
2020/04/04 PHP
网页的标准,IMG不支持onload标签怎么办
2006/06/29 Javascript
JS返回iframe中frameBorder属性值的方法
2015/04/01 Javascript
浏览器兼容的JS写法总结
2016/04/27 Javascript
js图片上传前预览功能(兼容所有浏览器)
2016/08/24 Javascript
简单理解vue中track-by属性
2016/10/26 Javascript
Bootstrap3 模态框使用实例
2017/02/22 Javascript
React Js 微信禁止复制链接分享禁止隐藏右上角菜单功能
2017/05/26 Javascript
javascript编程开发中取色器及封装$函数用法示例
2017/08/09 Javascript
10行原生JS实现文字无缝滚动(超简单)
2018/01/02 Javascript
Nuxt使用Vuex的方法示例
2019/09/06 Javascript
[07:12]2014DOTA2西雅图国际邀请赛 黑马Liquid专题采访
2014/07/12 DOTA
[05:39]2014DOTA2西雅图国际邀请赛 淘汰赛7月14日TOPPLAY
2014/07/14 DOTA
[44:15]国士无双DOTA2 6.82版本详解(上)
2014/09/28 DOTA
详解Python中的多线程编程
2015/04/09 Python
CSS3中动画属性transform、transition和animation属性的区别
2016/09/25 HTML / CSS
CSS3动画之流彩文字效果+图片模糊效果+边框伸展效果实现代码合集
2017/08/18 HTML / CSS
五分钟学会HTML5的WebSocket协议
2019/11/22 HTML / CSS
澳大利亚领先的在线药房:Pharmacy Online(有中文站)
2020/02/22 全球购物
初入社会应届生求职信
2013/11/18 职场文书
软件测试专业推荐信
2014/09/18 职场文书
机械制造专业大学生自我鉴定
2014/09/19 职场文书
审计局班子四风对照检查材料思想汇报
2014/10/07 职场文书
党的群众路线整改落实情况汇报
2014/10/28 职场文书
2014年后备干部工作总结
2014/12/08 职场文书
2016年全国助残日活动总结
2016/04/01 职场文书
原生Js 实现的简单无缝滚动轮播图的示例代码
2021/05/10 Javascript
Pytorch distributed 多卡并行载入模型操作
2021/06/05 Python
python中pandas对多列进行分组统计的实现
2021/06/18 Python