PHP:导出数据到word(包含图片)
1.方法
public function word()
{
$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();
$content='';
//$content = str_replace("src=\"/", "src=\"http://localhost:8087/", '<img src="waters/Public/uploads/anzhuang//20180518054237.jpg">');//给是相对路径的图片加上域名变成绝对路径,导出来的word就会显示图片了
foreach ($Data as $key => $val)
{
$content .= '<table border="0" align="center" width="600" height="800">
<tr>
<td>用户名字:</td>
<td>' . $val['u_name'] . '</td>
</tr>
<tr>
<td>家庭地址:</td>
<td>' . $val['u_addres'] . '</td>
</tr>
<tr>
<td>手机号:</td>
<td>' . $val['u_tel'] . '</td>
</tr>
<tr>
<td>身份证号:</td>
<td>' . $val['u_card'] . '</td>
</tr>
<tr>
<td>申报时间:</td>
<td>' . $val['u_time'] . '</td>
</tr>
<tr>
<td>用水性质:</td>
<td>' . $val['water_xingzhi'] . '</td>
</tr>
<tr>
<td>安装类别:</td>
<td>' . $val['u_class'] . '</td>
</tr>
<tr>
<td>身份证正面:</td>
<td><img height="240" width="300" src="http://60.205.111.111:8087/waters/Public'.$val['u_imgz'].'"></td>
</tr>
<tr>
<td>身份证反面:</td>
<td><img height="240" width="300" src="http://60.205.111.111:8087/waters/Public'.$val['u_imgf'].'"></td>
</tr>
<tr>
<td>水表口径;</td>
<td>' . $val['water_kj'] . '</td>
</tr>
<tr>
<td>水表位置:</td>
<td>' . $val['water_wz'] . '</td>
</tr>
<tr>
<td>区域位置;</td>
<td>' . $val['water_quyu'] . '</td>
</tr>
<tr>
<td>施工日期:</td>
<td>' . $val['water_start_time'] . '</td>
</tr>
<tr>
<td>施工人员:</td>
<td>' . $val['water_start_peo'] . '</td>
</tr>
<tr>
<td>施工经理:</td>
<td>' . $val['water_start_jingli'] . '</td>
</tr>
<tr>
<td>水表底数:</td>
<td>' . $val['watch_num'] . '</td>
</tr>
<tr>
<td>抄表日期:</td>
<td>' . $val['watch_time'] . '</td>
</tr>
<tr>
<td>抄表人员:</td>
<td>' . $val['watch_peo'] . '</td>
</tr>
<tr>
<td>收费经理:</td>
<td>' . $val['moneyjingli_name'] . '</td>
</tr>
</table>
';
}
$filename = $_SESSION['account'].date('_YmdHis');
$filename = iconv('utf-8', 'gb2312', $filename);
header('pragma:public');
header('Content-type:application/vnd.ms-word;charset=utf-8;name="' . $filename . '".doc');
header("Content-Disposition:attachment;filename=$filename.doc");//attachment新窗口打印inline本窗口打印
$html = '<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"><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>';//这句不能少,否则不能识别图片
echo $html . $content . '</html>';
}
本方法是把html页面导出到word(web视图)
导出结果如下图。这样就解决了PHPword导出图片不显示的问题

PHP:导出数据到word(包含图片)的更多相关文章
- iText导出pdf、word、图片
一.前言 在企业的信息系统中,报表处理一直占比较重要的作用,本文将介绍一种生成PDF报表的Java组件--iText.通过在服务器端使用Jsp或JavaBean生成PDF报表,客户端采用超级连接显示或 ...
- C#导出数据—使用Word模板
前言 本文主要介绍C#使用标签替换的方法导出数据,导出的数据模板使用Word文档. 模板建立 首先创建一个Word文档,然后建立一个基础模板.然后将上方菜单切换到插入菜单. 然后在想填充数据的地方添加 ...
- java用freemarker导出数据到word(含多图片)
一.制作word模版 新建word文档,按照需要设置好字体等各种格式:这里为了显得整齐使用了无边框的表格. 将word文档另存为xml文件(注意不是word xml文档,我吃了这家伙的大亏了) 然后用 ...
- java 导出数据为word文档(保持模板格式)
导出数据到具体的word文档里面,word有一定的格式,需要保持不变 这里使用freemarker来实现: ①:设计好word文档格式,需要用数据填充的地方用便于识别的长字符串替换 如 aaaaa ...
- thinkphp5中使用excel导出数据表格(包涵图片)
首先使用composer require phpoffice/phpexcel下载安装phpexcel包. 将包放入extend下面. 不附加图片的导出 /** * 导出excel(不带图片) * @ ...
- PHP:引用Phpword导出数据到word文档
下载地址https://www.cnwenhui.cn/html/show-597.html(其中有中文使用手册可以下载看看) 1.首先要下载Phpword类库,放在如下图目录下 2.调用方法 pub ...
- 导出数据到word
打野的时候,碰到一个需求,导出简历信息. 两条思路: 第一条,直接画所有的表格,填充数据. 第二条,加载一个空的模板,然后填充数据. 因为导出的有格式的,所以最后选择了使用模板进行替换,然后填充数据. ...
- C# 使用Word模板导出数据
使用NPOI控件导出数据到Word模板中方式: 效果如下: Word模板: 运行结果: 实现如下: Student.cs using System; using System.Collections. ...
- php导出word(可包含图片)
为大家介绍一个 php 生成 导出word(可包含图片)的代码,有需要的朋友可以参考下. 之前介绍过php生成word的例子,只是不能包含图片与链接. 今天 为大家介绍一个 php 生成 导出word ...
随机推荐
- dev 域名与 Chrome
前几天在相开发时使用什么的样域名比较好呢? 之前使用到 localhost,但只是本地开发,使用 test.com 感觉又不专业. 后来发现了一些指向 127.0.0.1 的域名,比如 localte ...
- vue 和 react 组件间通信方法对比
vue 和 react 组件间通信方法对比: 通信路径 vue的方法 react的方法 父组件 => 子组件 props(推荐).slot(推荐).this.$refs.this.$childr ...
- React 使用 PropTypes 进行类型检查
注意: React.PropTypes 自 React v15.5 起已弃用.请使用 prop-types 库代替. defaultProps 用来确保 this.props.name 在父组件没有特 ...
- Packet for query is too large (1660 > 1024). You can change this value on the server by setting the max_allowed_packet' variable.
原因是mysql 默认允许的 数据报包 是 1M 设置大一些就可以了 centos 下面 /ect/my.cnf 文件里面 加入或者修改 下面的参数 [mysqld] max_allowed_pa ...
- centos7下yum安装mariadb
1.安装MariaDB 删除已安装的mysqlyum remove mysql mysql-server mysql-libs mysql-devel删除存放数据的目录rm -rf /var/lib/ ...
- jmeter---将回应数据写入到文件
jmeter---将回应数据写入到文件 JMeterPlugins (插件监听器)Flexible File Writer:这个插件允许你灵活记录测试结果 Filename:结果记录的地方 Overw ...
- STM32的优先级的理解及其使用
1 组只代表主优先级和副优先级数量的配比,组之间没有优先级的概念. 2 不同的主优先级中断之间,高优先级中断可以打断正在执行的低优先级中断,即可以形成中断嵌套. 3 主优先级相同的中断,高副优先级中断 ...
- JAVA循环语句
while循环 求1到5的和 循环输出26个英文字母分两行输出 do while循环 猜拳游戏 这里包含随机数的生成方法Math.random()中数为double[0,1)通过*10和强制类型转换可 ...
- 恢复word中审阅选项卡
碰到在Word中,使用自定义功能区添加审阅选项卡,仍然不显示审阅选项卡 二个办法: 1.检查COM加载项,找出并从此禁用,如:iWebOffice2009.ocx 2.创建自定选项卡“审阅(自定义)” ...
- phoenix psqlline输入命令无法删除问题解决技巧
一.引言: phoenix psqlline使用过程中,使用CRT客户端,命令输入后无法删除,想起曾经处理HBaseShell输入后无法删除的解决办法,尝试了一下,居然有效,还是分享给大家把. 二.操 ...