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 相关文章推荐
php5.3以后的版本连接sqlserver2000的方法
Jul 28 PHP
php向js函数传参的几种方法
Aug 10 PHP
访问编码后的中文URL返回404错误的解决方法
Aug 20 PHP
php中的字符编码转换函数用法示例
Oct 20 PHP
PHP实现将浏览历史页面网址保存到cookie的方法
Jan 26 PHP
php单例模式实现方法分析
Mar 14 PHP
微信公众平台实现获取用户OpenID的方法
Apr 15 PHP
PHP获取页面执行时间的方法(推荐)
Dec 10 PHP
PHP重定向与伪静态区别
Feb 19 PHP
利用php操作memcache缓存的基础方法示例
Aug 02 PHP
php实现往pdf中加数字签名操作示例【附源码下载】
Aug 07 PHP
laravel实现按时间日期进行分组统计方法示例
Mar 23 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
Discuz!下Memcache缓存实现方法
2010/05/28 PHP
php分页代码学习示例分享
2014/02/20 PHP
memcache一致性hash的php实现方法
2015/03/05 PHP
ThinkPHP 5.x远程命令执行漏洞复现
2019/09/23 PHP
在视频前插入广告
2006/11/20 Javascript
[推荐]javascript 面向对象技术基础教程
2009/03/03 Javascript
javascript 常用方法总结
2009/06/03 Javascript
鼠标滚轮控制网页横向移动实现思路
2013/03/22 Javascript
什么是 AngularJS?AngularJS简介
2014/12/06 Javascript
jQuery实现字符串按指定长度加入特定内容的方法
2015/03/11 Javascript
jfreechart插件将数据展示成饼状图、柱状图和折线图
2015/04/13 Javascript
JavaScript实现简单获取当前网页网址的方法
2015/11/09 Javascript
使用jQuery,Angular实现登录界面验证码详解
2017/04/27 jQuery
nodejs 如何手动实现服务器
2018/08/20 NodeJs
vue 项目打包时样式及背景图片路径找不到的解决方式
2019/11/12 Javascript
详解Vue之计算属性
2020/06/20 Javascript
详解vue父子组件状态同步的最佳方式
2020/09/10 Javascript
[02:41]DOTA2英雄基础教程 亚巴顿
2014/01/02 DOTA
[02:53]2018年度DOTA2最佳战队-完美盛典
2018/12/17 DOTA
Python实现字符串格式化输出的方法详解
2017/09/20 Python
用不到50行的Python代码构建最小的区块链
2017/11/16 Python
python网络爬虫之如何伪装逃过反爬虫程序的方法
2017/11/23 Python
Python OpenCV读取png图像转成jpg图像存储的方法
2018/10/28 Python
Python环境下安装PyGame和PyOpenGL的方法
2020/03/25 Python
Django路由层URLconf作用及原理解析
2020/09/24 Python
jupyter 添加不同内核的操作
2021/02/06 Python
英国现代市场:ARKET
2019/04/10 全球购物
最好的商品表达自己:Cafepress
2019/09/04 全球购物
印度在线购买电子产品网站:Croma
2020/01/02 全球购物
外贸业务员的岗位职责
2013/11/23 职场文书
行政办公员自我评价分享
2013/12/14 职场文书
最美家庭活动方案
2014/08/31 职场文书
个人租房协议书样本
2014/10/01 职场文书
《世界多美呀》教学反思
2016/02/22 职场文书
vue实现简单数据双向绑定
2021/04/28 Vue.js
Node-Red实现MySQL数据库连接的方法
2021/08/07 MySQL