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程序员最常犯的11个MySQL错误小结
Nov 20 PHP
PHP如何抛出异常处理错误
Mar 02 PHP
第4章 数据处理-php数组的处理-郑阿奇
Jul 04 PHP
phpmyadmin提示The mbstring extension is missing的解决方法
Dec 17 PHP
php递归删除指定文件夹的方法小结
Apr 20 PHP
mysql_escape_string()函数用法分析
Apr 25 PHP
round robin权重轮循算法php实现代码
May 28 PHP
ThinkPHP发送邮件示例代码
Oct 08 PHP
php微信开发之图片回复功能
Jun 14 PHP
Yaf框架封装的MySQL数据库操作示例
Mar 06 PHP
PHP实现获取文件mime类型多种方法解析
May 28 PHP
Yii redis集合的基本使用教程
Jun 14 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+ajax无刷新上传图片实例代码
2015/11/17 PHP
ThinkPHP中create()方法自动验证表单信息
2017/04/28 PHP
YII框架常用技巧总结
2019/04/27 PHP
妙用Jquery的val()方法
2012/06/27 Javascript
jQuery实现表单提交时判断的方法
2014/12/13 Javascript
PHP结合jQuery实现的评论顶、踩功能
2015/07/22 Javascript
js实现的Easy Tabs选项卡用法实例
2015/09/06 Javascript
常用的JQuery函数及功能小结
2016/03/24 Javascript
canvas知识总结
2017/01/25 Javascript
js实现下拉菜单效果
2017/03/01 Javascript
nodeJS微信分享
2017/12/20 NodeJs
vue cli构建的项目中请求代理与项目打包问题
2018/02/26 Javascript
详解JavaScript的BUG和错误
2018/05/07 Javascript
swiper 自动图片无限轮播实现代码
2018/05/21 Javascript
js中this的指向问题归纳总结
2018/11/28 Javascript
浅谈KOA2 Restful方式路由初探
2019/03/14 Javascript
[02:47]DOTA2英雄基础教程 野性怒吼兽王
2013/12/05 DOTA
python dict remove数组删除(del,pop)
2013/03/24 Python
详解Python的Django框架中的通用视图
2015/05/04 Python
python使用fcntl模块实现程序加锁功能示例
2017/06/23 Python
python 中的divmod数字处理函数浅析
2017/10/17 Python
Python内置函数delattr的具体用法
2017/11/23 Python
解决python3中解压zip文件是文件名乱码的问题
2018/03/22 Python
Python安装图文教程 Pycharm安装教程
2018/03/27 Python
PyQt5实现简单的计算器
2020/05/30 Python
Python基于smtplib协议实现发送邮件
2020/06/03 Python
Smashbox英国官网:美国知名彩妆品牌
2017/11/13 全球购物
ebookers英国:隶属全球最大的在线旅游公司Expedia
2017/12/28 全球购物
MAC Cosmetics官方网站:魅可专业艺术彩妆
2019/04/10 全球购物
Farfetch澳大利亚官网:Farfetch Australia
2020/04/26 全球购物
交通事故检查书范文
2014/01/30 职场文书
青年志愿者先进事迹
2014/05/06 职场文书
2014年党务公开工作总结
2014/12/09 职场文书
2015年校医个人工作总结
2015/07/24 职场文书
Vue3 Composition API的使用简介
2021/03/29 Vue.js
详解Spring Bean的配置方式与实例化
2022/06/10 Java/Android