PHPexcel数据按模板导出
<?php
header("Content-type: text/html; charset=gb2312");
error_reporting(E_ALL);
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE); define('EOL',(PHP_SAPI == 'cli') ? PHP_EOL : '<br />'); date_default_timezone_set('Europe/London'); /** PHPExcel_IOFactory */
require_once dirname(__FILE__) . '/../Classes/PHPExcel/IOFactory.php';
$objReader = PHPExcel_IOFactory::createReader('Excel5');
//设置模板文件
$objPHPExcel = $objReader->load("templates/bills.xls");
//将json字符串转换为数组
$billData = json_decode($_REQUEST["billData"],true);
//填充单元格
$objPHPExcel->getActiveSheet()->setCellValue('B4', $billData['party'])
->setCellValue('B5', $billData['game'])
->setCellValue('A9', $billData['month'])
->setCellValue('I28', $billData['total'])
->setCellValue('H30', $billData['partyaccount']['name'])
->setCellValue('H31', $billData['partyaccount']['bank'])
->setCellValue('H32', $billData['partyaccount']['account'])
->setCellValue('H33', $billData['partyaccount']['address'])
->setCellValue('H34', $billData['partyaccount']['contactpeople']) ->setCellValue('H35', $billData['partyaccount']['contacttel']); //循环填充相同标题单元格
$row=11;
foreach($billData['bills'] as $r => $dataRow) {
$objPHPExcel->getActiveSheet()->setCellValue('B'.$row, $dataRow['cardtype'])
->setCellValue('c'.$row, $dataRow['orderamount'])
->setCellValue('D'.$row, $dataRow['feerate'])
->setCellValue('E'.$row, $dataRow['fee'])
->setCellValue('F'.$row, $dataRow['amount'])
->setCellValue('G'.$row, $dataRow['partyratio'])
->setCellValue('H'.$row, $dataRow['partynumber'])
->setCellValue('I'.$row, $dataRow['partyamount'])
->setCellValue('J'.$row, $dataRow['memo']);
$objPHPExcel->getActiveSheet()->getStyle('c'.$row)->getBorders()->getBottom()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
$row++;
} $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); $str= mb_convert_encoding("out/bill_".$billData['party'].'_'.$billData['game'].'_'.$billData['month'].".xls","gb2312","UTF-8");
$objWriter->save($str);
//让访问浏览器直接下载文件流
Header("Location: /out/bill_".$billData['party'].'_'.$billData['game'].'_'.$billData['month'].".xls");
PHPexcel数据按模板导出的更多相关文章
- 使用PHPExcel实现Excel文件的导入和导出(模板导出)
在之前有写过一篇文章讲述了使用PHP快速生成excel表格文件并下载,这种方式生成Excel文件,生成速度很快,但是有缺点是:1.单纯的生成Excel文件,生成的文件没有样式,单元格属性(填充色,宽度 ...
- PHPexcel数据导出
使用PHPexcel数据导出,可以从网上下载phpexcel引入使用,下面是我做的简单的数据导出练习 一.下载phpexcel 二.引发这个导出(我这里是写了一个简单的点击事件) <div id ...
- phpexcel 使用模板导出报表
function exportExcel($list, $filename, $indexKey = array()){ require_once(getcwd() . '../../app/Libs ...
- TP5.0 PHPExcel 数据表格导出导入(引)
TP5.0 PHPExcel 数据表格导出导入(引) 今天看的是PHPExcel这个扩展库,Comporse 下载不下来,最后只能自己去github里面手动下载,但有一个问题就是下载下来的PHPExc ...
- ASP.NET Core 2.2 : 十六.扒一扒新的Endpoint路由方案 try.dot.net 的正确使用姿势 .Net NPOI 根据excel模板导出excel、直接生成excel .Net NPOI 上传excel文件、提交后台获取excel里的数据
ASP.NET Core 2.2 : 十六.扒一扒新的Endpoint路由方案 ASP.NET Core 从2.2版本开始,采用了一个新的名为Endpoint的路由方案,与原来的方案在使用上差别不 ...
- 使用phpExcel实现Excel数据的导入导出(完全步骤)
使用phpExcel实现Excel数据的导入导出(完全步骤) 很多文章都有提到关于使用phpExcel实现Excel数据的导入导出,大部分文章都差不多,或者就是转载的,都会出现一些问题,下面是本人 ...
- phpexcel如何读取excel的数据和如何导出数据到excel
phpexcel如何读取excel的数据和如何导出数据到excel 一.总结 一句话总结:去官网看参考手册和api,或者找中文的博客或者参考手册 1.phpexcel插件如何下载? 其实这些插件不仅可 ...
- 利用PHPExcel 实现excel数据的导入导出(源码实现)
利用PHPExcel 实现excel数据的导入导出(源码实现) 在开发过程中,经常会遇到导入导出的需求,利用phpexcel类实现起来也是比较容易的,下面,我们一步一步实现 提前将phpexcel类下 ...
- kettle 使用excel模板导出数据
通过excel进行高速开发报表: 建设思路: 1.首先制订相关的execl模板. 2.通过etl工具(kettle)能够高速的 将数据库中的数据按excel模板导出成新的excel就可以. 当中ket ...
随机推荐
- 发一下关于公司的HOUSE OF HELLO 关于假货网站的声明吧
HOUSE OF HELLO,致力于为新时代潮流女性提供优质时尚的手袋,公司核心价值观是:坚韧开拓市场,真诚铸就成长,行动改变命运,激情成就梦想.公司从上到下的员工,都富于激情的努力工作,以积极,主动 ...
- 【Java】怎么回答java垃圾回收机制
(1) GC是垃圾收集的意思(Gabage Collection),内存处理是编程人员容易出现问题的地方,忘记或者错误的内存回收会导致程序或系统的不稳定甚至崩溃,Java提供的GC功能可以自动监测对象 ...
- ROR入门之旅
mac上为了不在登录画面看到其他账户,我禁用了root账户,而每次用Terminal的时候,先获得sudo账户的权限: sudo -s mac本身就安装有ruby ruby -v 查看当前安装的rub ...
- Hibernate 配置详解(2)
6) hibernate.session_factory_name: 配置一个JNDI名称,通过Configuration对象创建的SessionFactory会绑定到JNDI下该名称中.一般名字格式 ...
- Git for Windows安装和基本设置
1.下载地址: http://msysgit.github.io/ 2.下载完成后安装,安装路径自己选择,其他的选项参照下图: 其他的一步一步往下即可,最后Finish完成安装: 3.配置github ...
- linux内核空间与用户空间信息交互方法
linux内核空间与用户空间信息交互方法 本文作者: 康华:计算机硕士,主要从事Linux操作系统内核.Linux技术标准.计算机安全.软件测试等领域的研究与开发工作,现就职于信息产业部软件与 ...
- 一键源码安装Ansible
#!/bin/bash # @Name:install_ansible.sh # @Author:Eivllom # @Create -- # @Modify -- app_soft="/a ...
- CodeForce 7 B - Memory Manager(模拟)
题目大意:给你一段内存,要你进行如下的三个操作. 1.分配内存 alloc X ,分配连续一段长度为X的内存. 如果内存不够应该输出NULL,如果内存够就给这段内存标记一个编号. 2.擦除编号为 ...
- 线性代数(矩阵乘法):NOI 2007 生成树计数
这道题就是深搜矩阵,再快速幂. #include <iostream> #include <cstring> #include <cstdio> #include ...
- Nodejs in Visual Studio Code 12.构建单页应用Scrat实践
1.开始 随着前端工程化深入研究,前端工程师现在碉堡了,甚至搞了个自己的前端网站http://div.io/需要邀请码才能注册,不过里面的技术确实牛.距离顶级的前端架构,目前博主应该是far away ...