//浏览器输出excel
header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
header('Content-Disposition: attachment;filename="dzg_card_info.xlsx"');
header('Cache-Control: max-age=0'); $this->load->library('PHPExcel'); //加载类库,其他框架可以使用require_one
$objPHPExcel = new PHPExcel();
$objPHPExcel->setActiveSheetIndex(0); //设置第一个工作表为活动工作表
$objPHPExcel->getActiveSheet()->setTitle('card_info'); //设置工作表名称
//为单元格赋值
//方法①:直接设置单元格的值
/* $objPHPExcel->getActiveSheet()->setCellValue('A1', 'PHPExcel');
$objPHPExcel->getActiveSheet()->setCellValue('A2', 12345.6789);
$objPHPExcel->getActiveSheet()->setCellValue('A3', TRUE); */ //方法②:二维数组
$arrHeader = array(['id', '名字', '技能', '创建时间']);
$arrAllCardInfo = $this->admin_model->getAllCardInfo(); //二维数组
$arrExcelInfo = array_merge($arrHeader, $arrAllCardInfo);
$arrExcelInfo = eval('return ' . iconv('gbk', 'utf-8', var_export($arrExcelInfo, true)) . ';'); //将数组转换成utf-8
$objPHPExcel->getActiveSheet()->fromArray(
$arrExcelInfo, // 赋值的数组
NULL, // 忽略的值,不会在excel中显示
'A1' // 赋值的起始位置
); //创建第二个工作表
$msgWorkSheet = new PHPExcel_Worksheet($objPHPExcel, 'card_message'); //创建一个工作表
$objPHPExcel->addSheet($msgWorkSheet); //插入工作表
$objPHPExcel->setActiveSheetIndex(1); //切换到新创建的工作表
$arrHeader = array(['id', 'uid', '描述']);
$arrBody = $this->admin_model->getAllCardMsg();
$arrExcelInfo = array_merge($arrHeader, $arrBody);
$arrExcelInfo = eval('return ' . iconv('gbk', 'utf-8', var_export($arrExcelInfo, true)) . ';'); //将数组转换成utf-8
$objPHPExcel->getActiveSheet()->fromArray(
$arrExcelInfo, // 赋值的数组
NULL, // 忽略的值,不会在excel中显示
'A1' // 赋值的起始位置
); $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, "Excel2007");
$objWriter->save('php://output'); $objPHPExcel->disconnectWorksheets();
unset($objPHPExcel);

PHPExcel 多工作表 导出的更多相关文章

  1. PHPExcel 多工作表 导入

    //参数初始化 $filePath = ''; if ($_FILES["file"]["error"] > 0) { returnJSON(ERROR_ ...

  2. PHP用PHPExcel导出有多个工作表的Excel表格(thinkPHP3.2.3)

    直接上代码: //导出excel public function excel() { //引入相关文件 import("Org.Util.PHPExcel"); import(&q ...

  3. RDLC 微软报表 导出Excel时产生多个工作表 (worksheet)

    . I have added two obejcts data source to Report Viewer. 2. in RDLC i have created two tables and in ...

  4. C#将一个excel工作表根据指定范围拆分为多个excel文件

    C#将一个excel工作表根据指定范围拆分为多个excel文件 微软Excel没有提供直接的方法来拆分excel文件,因此要拆分一个excel文件最简单的方法可能就是手动剪切和粘贴了,除此之外,还有其 ...

  5. (后端)如何将数据库的表导出生成Excel?

    1.如何通过元数据拿到数据库的信息? 2.如何用Java生成Excel表? 3.将数据库中的表导出生成Excel案例 如何通过元数据拿到数据库的信息 元数据:描述数据的数据 Java中使用元数据的两个 ...

  6. mysqldump 导出统一限制每张数据表导出的记录数

    mysqldump 导出统一限制每张数据表导出的记录数 在工作过程中,需要将生产的数据导出到本地开发环境,我希望可以导出部分数据.而服务器数据量比较大(上千万),如果选择直接从服务器导出数据, 正在运 ...

  7. Excel表导出

     前言 分别介绍两种导出Exce表格的方法和读取Excel表格数据方法. 1.在MVC下的表格导出. 2.基于NPOI的表格导出. 3.读取Excel表格数据. 第一种方法:在MVC下的表格导出. 首 ...

  8. jfinal excel表导出

    在自己的WEB项目中要用到导出Excel,所以结合网络上的资源写了一个自己的export 工具类. 说明: JFinal 环境 WEB项目 JAVA后台生成非JS插件 好了,直接撸代码 1.设置文件保 ...

  9. 个人永久性免费-Excel催化剂功能第51波-聚光灯功能,长宽工作表不看错位使用

    Excel的聚光灯功能,笔者是有点看不上,也曾经写文吐槽过这些类似的功能的实用性,但现实可能真的很多小白很需要,大家Excel水平参差不齐,大量的不规范做表习惯,致使此功能使用场景仍然非常广阔.很怀疑 ...

随机推荐

  1. js删除数组里的某个元素

    首先可以给js的数组对象定义一个函数,用于查找指定的元素在数组中的位置,即索引,代码为: Array.prototype.indexOf = function(val) { for (var i = ...

  2. ACID:数据库事务正确执行的四个基本要素

    ACID,指数据库事务正确执行的四个基本要素的缩写.包含:原子性(Atomicity).一致性(Consistency).隔离性(Isolation).持久性(Durability).一个支持事务(T ...

  3. 容易上手-类似ERP系统 简单特效

    今天大概简单写一个效果, 这个效果 很容易 上手的: html: <style type="text/css">.menu_list ul{display:none;} ...

  4. 异步方式向WPF ListBox控件中一条一条添加记录

    向ListBox绑定数据源时,如果数据量过大,可能会使得程序卡死,这是就需要一条一条的向ListBox的数据源中添加记录了,下面是个小Demo: 1.前台代码,就是一个ListBox控件 <Wi ...

  5. Balsamiq Mockups registration code

    最近使用Mockups 进行页面原型设计,发现是未注册的,于是网上查询了下注册码,居然有效,在此记录下.    有需要的朋友也可以试试. Name:Rick Dong     Key:eNrzzU/O ...

  6. node.js(七) 子进程 child_process模块

    众所周知node.js是基于单线程模型架构,这样的设计可以带来高效的CPU利用率,但是无法却利用多个核心的CPU,为了解决这个问题,node.js提供了child_process模块,通过多进程来实现 ...

  7. workspace & subProject & target

    workspace & subProject & target http://blog.itpub.net/12231606/viewspace-1079867/ 最近新入一个项目组, ...

  8. Netty4.X 学习(一)

    Server: import io.netty.buffer.ByteBuf; import io.netty.channel.ChannelHandlerContext; import io.net ...

  9. statistics specify some columns count

    # -k1 follow the first column nr

  10. jq方法

    DOM属性-获取和设置页面元素的DOM属性 .addClass()..attr()..prop()..hasClass()..html()..removeAttr()..removeClass().. ...