PHP:引用Phpword导出数据到word文档
下载地址https://www.cnwenhui.cn/html/show-597.html(其中有中文使用手册可以下载看看)
1.首先要下载Phpword类库,放在如下图目录下
2.调用方法
public function daochuword()
{
vendor("PHPWord.PHPWord");
// New Word Document
$PHPWord = new \PHPWord();
// New portrait section
$section = $PHPWord->createSection();
$PHPWord->addFontStyle('rStyle', array('bold'=>true,'color'=>'87CEEB','size'=>35));
$PHPWord->addParagraphStyle('pStyle', array('align'=>'center','spacing'=>120));
$xlsModel = M('api_aliucheng');
$Data = $xlsModel->Field('id,u_name,u_addres,u_tel,u_card,u_time,u_imgz,u_imgf,u_class,b_one_beizhu,b_shenhe_p,water_kj,water_wz,water_quyu,water_start_time,water_start_peo,water_start_jingli,water_beizhu,water_xingzhi,watch_num,watch_time,watch_peo,moneyjingli_name,moneyjingli_beizhu,jingli_name')->where(array('jingli_state_san'=>1))->select();
foreach($Data as $key=>$val){
$fontStyle = array('color'=>'000000', 'size'=>15,'align'=>'center');
$PHPWord->addFontStyle('myOwnStyle', $fontStyle);
$section->addText(iconv('utf-8', 'gb2312','用户名字:'.$val['u_name']), 'myOwnStyle');
$section->addTextBreak(1);
$section->addText(iconv('utf-8', 'gb2312','家庭地址:'.$val['u_addres']), 'myOwnStyle');
$section->addTextBreak(1);
$section->addText(iconv('utf-8', 'gb2312','手机号:'.$val['u_tel']), 'myOwnStyle');
$section->addTextBreak(1);
$section->addText(iconv('utf-8', 'gb2312','身份证号:'.$val['u_card']), 'myOwnStyle');
$section->addTextBreak(1);
$section->addText(iconv('utf-8', 'gb2312','申报时间:'.$val['u_time']), 'myOwnStyle');
$section->addTextBreak(1);
$section->addText(iconv('utf-8', 'gb2312','用水性质:'.$val['water_xingzhi']), 'myOwnStyle');
$section->addTextBreak(1);
$section->addText(iconv('utf-8', 'gb2312','安装类别:'.$val['u_class']), 'myOwnStyle');
$section->addTextBreak(1);
$imageStyle = array('width'=>100, 'height'=>80, 'align'=>'center');
$section->addText(iconv('utf-8', 'gb2312','身份证正面:'), 'myOwnStyle');
$section->addMemoryImage('<img src="http://localhost:8087/waters/Public/uploads/anzhuang//20180518054237.jpg">',$imageStyle);
// $section->addMemoryImage($img,$imageStyle);
$section->addTextBreak(1);
$section->addPageBreak();//分页
}
$xlsTitle = iconv('utf-8', 'gb2312');//文件名称
$fileName = $_SESSION['account'].date('_YmdHis');//or $xlsTitle 文件名称可根据自己情况设定
header('pragma:public');
header('Content-type:application/vnd.ms-word;charset=utf-8;name="'.$xlsTitle.'.doc"');
header("Content-Disposition:attachment;filename=$fileName.doc");//attachment新窗口打印inline本窗口打印
header( 'Content-Type: image/jpeg');
ob_clean();//关键
flush();//关键
$objWrite = \PHPWord_IOFactory::createWriter($PHPWord, 'Word2007');
$objWrite->save('php://output');
exit;
}
3.导出结果
4.可以发现图片并没有被导出来,是因为word只认电脑路径比如:C:\Users\wrl\Pictures\Saved Pictures,所以导出的时候要注意
PHP:引用Phpword导出数据到word文档的更多相关文章
- java 导出数据为word文档(保持模板格式)
导出数据到具体的word文档里面,word有一定的格式,需要保持不变 这里使用freemarker来实现: ①:设计好word文档格式,需要用数据填充的地方用便于识别的长字符串替换 如 aaaaa ...
- Java将数据写入word文档(.doc)
Java可用org.apache.poi包来操作word文档.org.apache.poi包可于官网上下载,解压后各jar作用如下图所示: 可根据需求导入对应的jar. 一.HWPFDocument类 ...
- C#简单实现动态数据生成Word文档并保存
今天正好有人问我,怎么生成一个报表式的Word文档. 就是文字的样式和位置相对固定不变,只是里面的内容从数据中读取. 我觉得类似这种的一般用第三方报表来做比较简便.但既然要求了Word,只好硬着头皮来 ...
- 用poi来导出数据到excel文档
package cn.com.dyg.work.common.utils; import org.apache.poi.hssf.usermodel.HSSFRichTextString; impor ...
- C# 在根据窗体中的表格数据生成word文档时出错
出错内容为:
- word 文档导出 (freemaker+jacob)--java开发
工作中终于遇到了 需要导出word文旦的需求了.由于以前没有操作过,所以就先百度下了,基本上是:博客园,简书,CDSN,这几大机构的相关帖子比较多,然后花了2周时间 才初步弄懂. 学习顺序: 第一阶 ...
- Java 导出数据库表信息生成Word文档
一.前言 最近看见朋友写了一个导出数据库生成word文档的业务,感觉很有意思,研究了一下,这里也拿出来与大家分享一波~ 先来看看生成的word文档效果吧 下面我们也来一起简单的实现吧 二.Java 导 ...
- C#(MVC) Word 替换,填充表格,导出并下载PDF文档
近期做一个关于C# 操作 Word 模板 文档的功能模块,查阅资料,最终完美完成任务,记录下来,以便后面还会用到.
- 将HTML导出生成word文档
前言: 项目开发中遇到了需要将HTML页面的内容导出为一个word文档,所以有了这边随笔. 当然,项目开发又时间有点紧迫,第一时间想到的是用插件,所以百度了下.下面就介绍两个导出word文档的方法. ...
随机推荐
- LOJ 2737 「JOISC 2016 Day 3」电报 ——思路+基环树DP
题目:https://loj.ac/problem/2737 相连的关系形成若干环 / 内向基环树 .如果不是只有一个环的话,就得断开一些边使得图变成若干链.边的边权是以它为出边的点的点权. 基环树的 ...
- Zookeeper 三台主机 Ha集群的搭建
前期准备1.修改Linux主机名 2.修改IP 3.修改主机名和IP的映射关系 /etc/hosts ######注意######如果你们公司是租用的服务器或是使用的云主机(如华为用主机.阿里云主机等 ...
- Myeclipse 配置Git详解
Myeclipse+Git EGit安装 MyEclipse已经集成了Git插件EGit,在window->Preference里搜索git可以看到. 如果没有,安装方式为Help-> ...
- 分布式超级账本Hyperledger为什么选择使用kafka引擎实现共识方案
使用kafka集群配置的原因也很简单,为orderer共识及排序服务提供足够的容错空间,当我们向peer节点提交Transaction的时候,peer节点会得到或返回(基于SDK)一个读写集结果,该结 ...
- 2017.11.13 flex 布局相关问题
一.今日任务:城市体验平台小程序的开发(由于数据还未完善,今天主要是 UI 布局的开发) 二.所遇问题 1. flex 布局问题: html: <view class="flex-sp ...
- mac打开文件提示文件已经坏了的修改
10.12下面,mac做了安全的限制,不能打开任意的文件,需要解除限制 sudo spctl --master-disable
- 跟着未名学Office - 高效工作Outlook
目录 第一篇邮件与联系人 1 第一节 使用与技巧 1 第二节 高效 11 第二篇 事务助手 21 第一节 日程管理 21 第二节 任务 ...
- “无法获得锁 /var/lib/dpkg/lock -open (11:资源暂时不可用)”的方法
另外的ubuntu 问题 在更新的时候有时候会出现 “无法获得锁 /var/lib/dpkg/lock -open (11:资源暂时不可用)”的方法 解决办法: 在ubuntu系统的termial下, ...
- 【redis】之centos6.x安装redis3.0.x
centos6.9_x86_64 1.下载redis安装包 http://download.redis.io/releases/redis-3.2.9.tar.gz 2.解压 编译到指定得目录 mak ...
- STL进阶--狡猾的反向迭代器
反向迭代器 两种声明反向迭代器的方法 reverse_iterator<vector<int>::iterator> ritr; vector<int>::reve ...