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 ...
随机推荐
- 推荐一篇文章 《为什么C语言不会过时?》
<为什么C语言不会过时?> 文章地址 : https://mp.weixin.qq.com/s?__biz=MzAxOTc0NzExNg==&mid=2665515153&a ...
- Package has no installation candidate解决方法
今天在安装软件的时候出现了Package has no installation candidate的问题,如:# apt-get install <packagename>Reading ...
- jmeter之Throughput Controller
jmeter之Throughput Controller Throughput Controller 这个控制器的命名不准确,因为它不是用来控制吞吐量的.吞吐量控制器允许用户控制执行频率,jmeter ...
- golang database sql DSN (Data Source Name)中的timeout, readTimeout
golang 语言,在打开mysql DB时,有时会用到timeout,readTimeout两个参数. 1.timeout 建立连接超时时间 例如, "30s", "0 ...
- Git-配置difftool和mergetool
git自带的difftool和mergetool使用不习惯,配置difftool和mergetool为Beyond Compare 3. git的配置文件一般在C:\Users\用户名\.gitcon ...
- SDRAM初识
SDRAM初识 1. 2. 3. 4. SDRAM分为bank地址和行列地址,看bank地址的位宽就可以推断出bank的数量,行列地址信号是集成在了一个信号中,是并行的. 5. 6. SDRAM与主机 ...
- Thinkphp路由使用
'URL_ROUTER_ON' => true, //开启路由 2.定义路由 'URL_ROUTE_RULES' => array( '/^c_(\d+)$/' => 'Index/ ...
- FastReport 保存为文件
public void SaveToPDF<TModel>(List<TModel> model, string content, string saveFilePath) { ...
- 把1,2,3…n*n 的数字按照顺时针螺旋的形式填入数字矩阵
从键盘输入一个整数(1~20)则以该数字为矩阵的大小,把1,2,3…n*n 的数字按照顺时针螺旋的形式填入其中.例如:输入数字2,则程序输出:1 24 3输入数字3,则程序输出:1 2 38 9 47 ...
- 史上最全Spring面试71题与答案
1.什么是spring? Spring是个java企业级应用的开源开发框架.Spring主要用来开发Java应用,但是有些扩展是针对构建J2EE平台的web应用.Spring框架目标是简化Java企业 ...