php导出生成word的方法


Posted in PHP onDecember 25, 2015

本文实例讲述了php导出生成word的方法。分享给大家供大家参考,具体如下:

PHP导出word

(1)首先,预览html页面,示例化对象,定义要导出的数据
(2)点击下载页面,给id传值(任何值均可,仅用于判断),如果id有值,输出缓冲文件,保存为word格式。
(3)点击下载后,(如果是图片的话,在保存为word时要使用绝对路径,这样才可以在保存的word中正常显示)
(4)关闭缓存输出

Word_con.php  预览要导出的html文件

<?php
if(@$_GET[id]!='')
{
 include('word_fun.php');
 $word=new word();//示例化对象
 $word->start();//定义要保存数据的开始
}
include('word_show.php');
 if(@$_GET[id]!='')
 {
   $word->save('word_c.doc');//定义要保存数据的结束,同时把数据保存到word中
 }
 if(@$_GET[id]=='')
 {
 //超链接中的x仅仅是为了传一个值,确认下载,没有其他的实际yi
 ?>
 <a href="#"><div onclick="window.location.href='word_con.php?id=x'">点击跳到下载页面</div></a>
 <?php
 }else{
 echo "<a href=\"word_c.doc\">下载</a>";
 }
?>

Word_fun.php  导出word相关函数

<?php
class word
{
function start() //定义要保存数据的开始
{
    ob_start(); //开始输出缓冲
    //设置生成word的格式
    print '<html xmlns="urn:schemas-microsoft-comfficeffice"
    xmlns:w="urn:schemas-microsoft-comffice:word"
    xmlns="http://www.w3.org/TR/REC-html40">';
}
function save($path) //定义要保存数据的结束,同时把数据保存到word中  
//所要保存的数据必须限定在该类的start()和save()之间
{
print "</html>";
$data=ob_get_contents(); //返回内部缓冲的内容 即把输出变成字符串
ob_end_clean(); //结束输出缓冲,清洁(擦除)输出缓冲区并关闭输出缓冲
$this->wirtetoword($path,$data);
}
function wirtetoword($fn,$data) //将数据已二进制的形式保存到word中
{
$fp=fopen($fn,"wb");
fwrite($fp,$data);
fclose($fp);
}
}
?>

Word_show.php  连接数据库,查询相关数据

<?php 
 include('conn.php'); //连接数据库
 $sq="select zf_content from zf where `zf_id`=137";
 $sql=mysql_query($sq);
 while(($que=mysql_fetch_array($sql))!=false)
 {
  echo "<font color=\"red\">hahaahahha</font>";
  echo $que['zf_content'];
 }
?>

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
php桌面中心(三) 修改数据库
Mar 11 PHP
php学习笔记 数组的常用函数
Jun 13 PHP
详解PHP中strlen和mb_strlen函数的区别
Mar 07 PHP
PHP、Nginx、Apache中禁止网页被iframe引用的方法
Oct 01 PHP
php解析json数据实例
Aug 19 PHP
PHP实现简单实用的验证码类
Jul 29 PHP
PHP简单字符串过滤方法示例
Sep 04 PHP
thinkPHP数据库增删改查操作方法实例详解
Dec 06 PHP
PHP构造二叉树算法示例
Jun 21 PHP
yii2中关于加密解密的那些事儿
Jun 12 PHP
Laravel项目中timeAgo字段语言转换的改善方法示例
Sep 16 PHP
解决PHPstudy Apache无法启动的问题【亲测有效】
Oct 30 PHP
大家都应该掌握的PHP关联数组使用技巧
Dec 25 #PHP
[原创]PHP实现逐行删除文件右侧空格的方法
Dec 25 #PHP
PHP操作MySQL的mysql_fetch_* 函数的常见用法教程
Dec 25 #PHP
php通过淘宝API查询IP地址归属等信息
Dec 25 #PHP
php实现统计目录文件大小的函数
Dec 25 #PHP
通过PHP自带的服务器来查看正则匹配结果的方法
Dec 24 #PHP
在openSUSE42.1下编译安装PHP7 的方法
Dec 24 #PHP
You might like
PHP使用DirectoryIterator显示下拉文件列表的方法
2015/03/13 PHP
PHP与jquery实时显示网站在线人数实例详解
2016/12/02 PHP
PHP preg_match实现正则表达式匹配功能【输出是否匹配及匹配值】
2017/07/19 PHP
PHP优化之批量操作MySQL实例分析
2020/04/23 PHP
JavaScript版代码高亮
2006/06/26 Javascript
js获取url参数的使用扩展实例
2007/12/29 Javascript
javascript+xml技术实现分页浏览
2008/07/27 Javascript
基于JQuery的列表拖动排序实现代码
2013/10/01 Javascript
Javascript:为input设置readOnly属性(示例讲解)
2013/12/25 Javascript
js构造函数、索引数组和属性的实现方式和使用
2014/11/16 Javascript
JavaScript中的操作符类型转换示例总结
2016/05/30 Javascript
获取input标签的所有属性的方法
2016/06/28 Javascript
深入理解vue路由的使用
2017/03/24 Javascript
jQuery实现简单漂亮的Nav导航菜单效果
2017/03/29 jQuery
Node.js五大应用性能技巧小结(必须收藏)
2017/08/09 Javascript
Vue仿今日头条实例详解
2018/02/06 Javascript
vue中前进刷新、后退缓存用户浏览数据和浏览位置的实例讲解
2018/09/21 Javascript
如何在微信小程序中实现Mixins方案
2019/06/20 Javascript
微信小程序实现页面跳转传递参数(实体,对象)
2019/08/12 Javascript
vue过滤器实现日期格式化的案例分析
2020/07/02 Javascript
vue中echarts引入中国地图的案例
2020/07/28 Javascript
原生js实现购物车
2020/09/23 Javascript
Python多线程和队列操作实例
2015/06/21 Python
Python的CGIHTTPServer交互实现详解
2018/02/08 Python
Python比较2个时间大小的实现方法
2018/04/10 Python
浅谈pycharm下找不到sqlalchemy的问题
2018/12/03 Python
python画双y轴图像的示例代码
2019/07/07 Python
对Django的restful用法详解(自带的增删改查)
2019/08/28 Python
Python3将jpg转为pdf文件的方法示例
2019/12/13 Python
QML用PathView实现轮播图
2020/06/03 Python
药店促销活动策划方案
2014/08/24 职场文书
个人授权委托书范文
2014/09/21 职场文书
2015年党员创先争优公开承诺书
2015/04/27 职场文书
小学中队长竞选稿
2015/11/20 职场文书
2016年企业安全生产月活动总结
2016/04/06 职场文书
pandas 操作 Excel操作总结
2021/03/31 Python