首先去下载PHPExcel类,地址http://phpexcel.codeplex.com/

方法如下第一步引入这个扩展类

 Vendor('PHPExcel');

第二部就是方法了,下面简单的实现方法

     public function phpExcel()
{
// $list=array(array('dfcdf','测试','dfdfdsfd','dfd','dfdf'),array('dfdsf','51策划书','dfdsfd','efed','dfdf'));
$list = session('cash_list');
$phpExcel = new \PHPExcel();
$phpExcel->getProperties()
->setCreator('ShuLaiBao')//创建人
->setLastModifiedBy('ShuLaiBao')//最后修改人
->setTitle('Office 2007 XLSX Test Document')//标题
->setSubject('Office 2007 XLSX Test Document')//题目
->setDescription('Test document for Office 2007 XLSX, generated using PHP classes.')//描述
->setKeywords('office 2007 openxml php')
->setCategory('Test Result file');
//设置当前的sheet
$phpExcel->setActiveSheetIndex(0);
//设置表头
$phpExcel->getActiveSheet()
->setCellValue('A1', '用户')
->setCellValue('B1', '微信号')
->setCellValue('C1', '商户订单号')
->setCellValue('D1', '付款订单号')
->setCellValue('E1', '发送时间');
foreach ($list as $key => $value) {
$phpExcel->getActiveSheet()
->setCellValue('A' . ($key + 2), $value['user_login'])
->setCellValue('B' . ($key + 2), $value['re_user_name'])
->setCellValue('C' . ($key + 2), $value['mcn_billno'])
->setCellValue('D' . ($key + 2), $value['payment_no'])
->setCellValue('E' . ($key + 2), date('Y-m-d H:i:s', $value['send_time']));
}
// 设置sheet的标题
$phpExcel->getActiveSheet()->setTitle('发送记录');
// 创建文件格式写入对象实例, uncomment
//$objWriter = PHPExcel_IOFactory::createWriter($phpExcel,'Excel5');
//$objWriter = new \PHPExcel_Writer_Excel5($phpExcel); // 用于其他版本格式
//$objWriter = new PHPExcel_Writer_Excel2007($objExcel); // 用于 2007 格式
$objWriter = new \PHPExcel_Writer_Excel5($phpExcel);
//设置文件名
$filename = date('Y-m-d H:i:s', time()) . '_微信红包发送记录.xls';
//设置header
// ob_clean();
// flush();
header("Content-Type: application/force-download");
header("Content-Type: application/octet-stream");
header("Content-Type: application/download");
header('Content-Disposition:inline;filename="' . $filename . '"');
header("Content-Transfer-Encoding: binary");
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Pragma: no-cache");
$objWriter->save('php://output');
die();//终止执行
}

PHP实现excel导出的更多相关文章

  1. [moka同学笔记]PHPexcel之excel导出和导入

    原案例来自http://www.sucaihuo.com/有修改 1.目录结构(文件不用解释,应该都可以看得懂,直接看代码)

  2. 偷懒小工具 - Excel导出公共类

    说明 最近接了一个任务,就是做一个列表的Excel导出功能.并且有很多页面都会使用这个功能. 导出的Excel大体格式如图 很简单的列表,标题加背景色,然后不同类型,显示方式不一样.对齐方式不一样.不 ...

  3. 转:POI操作Excel导出

    package com.rd.lh.util.excel; import java.beans.PropertyDescriptor; import java.io.FileOutputStream; ...

  4. TP5.0源生Excel导出

    PHPExcel类在TP5里边并不能很好的兼容,使用起来很麻烦. 不像是tp3.2那样直接import()加进来就能new,因为它里边的命名空间找不到.总是说undefined class. 如果是使 ...

  5. java反射学习之二万能EXCEL导出

    一.EXCEL导出的实现过程 假设有一个对象的集合,现在需要将此集合内的所有对象导出到EXCEL中,对象有N个属性:那么我们实现的方式是这样的: 循环这个集合,在循环集合中某个对象的所有属性,将这个对 ...

  6. Devexpress EXCEL导出

    #region EXCEL导出 /// <summary> /// EXCEL导出 /// </summary> /// <param name="saveFi ...

  7. 自己写的java excel导出工具类

    最近项目要用到excel导出功能,之前也写过类似的代码.因为这次项目中多次用到excel导出.这次长了记性整理了一下 分享给大伙 欢迎一起讨论 生成excel的主工具类: public class E ...

  8. 发邮件 和 excel导出中文文件名

    /** * 发邮件 * @param email * @param subject * @param body * @throws UnsupportedEncodingException */ pu ...

  9. asp.net(C#) Excel导出类 导出.xls文件

    ---恢复内容开始--- using Microsoft.Office.Interop.Excel; 针对office 2003需添加引用Microsoft   Excel   11.0   Obje ...

  10. Atitit.excel导出 功能解决方案 php java C#.net版总集合.doc

    Atitit.excel导出 功能解决方案 php java C#.net版总集合.docx 1.1. Excel的保存格式office2003 office2007/2010格式1 1.2. 类库选 ...

随机推荐

  1. json 转 T

    T test = JsonConvert.DeserializeObject<T>(json);(json.net)

  2. 【转】Win32 创建控件风格不是Win XP解决方案

    有时候我有在用Win32 API来向窗体上添加控件时,通过CreateWindow或CreateWindowEx创建出来的控件的风格不像XP风格,而是像Windows 2000的风格,界面很难看.注意 ...

  3. [转]Shell脚本中发送html邮件的方法

    <span "="">作为运维人员,免不了要编写一些监控脚本,并将监控结果及时的发送出来.那么通过邮件发送是比较常用的一种通知方式了.通常的,如果需要发送的内 ...

  4. iOS 关于 UIKit 专栏应该写在最前面的话

    iOS 关于 UIKit 应该写在最前面的话 太阳火神的漂亮人生 (http://blog.csdn.net/opengl_es) 本文遵循"署名-非商业用途-保持一致"创作公用协 ...

  5. 解决error: Unable to find vcvarsall.bat【python 2.7/vs2010】

    转自:http://blog.csdn.net/secretx/article/details/17472107 去下载安装VS2010(08版貌似也行,不过没必要用旧版,指不定哪个库又无法编译),给 ...

  6. 利用hugo生成静态站点

    动机 使用Markdown撰写博客,并以静态页面形式发布. 选择hugo 现在jekyll似乎更加流行,但是jekyll是基于Ruby的,在windows下安装很繁琐. 而hugo是用go写的,win ...

  7. FragmentStatePagerAdapter写法

    为了节省资源,分批加载数据//适配器class TabLayoutViewPagerAdapter extends FragmentStatePagerAdapter { public TabLayo ...

  8. js中什么是闭包?

    闭包是一个拥有许多变量和绑定了这些变量的环境的表达式(通常是一个函数),因而这些变量也是该表达式的一部分.

  9. SSH电力项目九--运行监控首页显示

    需求:在首页显示出设备运行情况,并去掉<br>换行符,每隔十分钟刷新一次页面. ElecMenuAction.java 首先注入运行监控service public class ElecM ...

  10. vuex应用实例-this.$store.commit()触发

    新建文件夹store,store下: action.js const actions = {} export default actions; getter.js const getters = {} ...