提供两种导出excel方法

1 最简单的导出excel

header('Content-Type: application/vnd.ms-excel'); //设置文件类型   也可以将 vnd.ms-excel' 改成xml(导出xml文件)
   header('Content-Disposition: attachment;filename="云平台用户报表.xls"'); //设置导出的excel的名字
   header('Cache-Control: max-age=0');

echo iconv("utf-8","gbk","时间\t错误码\t出现次数\t错误码含义\n");  //  \t是制表符 \n是换行符
   foreach ($arr as $key=>$val){   //$arr 是所要导出的数据
    echo iconv("utf-8","gbk",date("Y-m-d",$val["time"])."\t".$val["error_code"]."\t".$val["num"]."\t".$val["code_mean"]."\n");
   }

2.使用phpexcel导出excel

到网上下载phpexcel压缩包 将phpexcel.php 和phpexcel压缩包放入你的项目中

实例:

require_once ('PHPExcel.php');   //引用这两个文件
 require_once ('PHPExcel/Writer/Excel2007.php');

//导出excel
  $objExcel = new PHPExcel();
  $objProps = $objExcel->getProperties();
  $objProps->setCreator("Zeal Li");
  $objProps->setLastModifiedBy("Zeal Li");
  $objProps->setTitle("Office XLS Test Document");
  $objProps->setSubject("Office XLS Test Document, Demo");
  $objProps->setDescription("Test document, generated by PHPExcel.");
  $objProps->setKeywords("office excel PHPExcel");
  $objProps->setCategory("Test");
  $objProps = $objExcel->getProperties();
  $objProps->setCreator("Zeal Li");
  $objProps->setLastModifiedBy("Zeal Li");
  $objProps->setTitle("Office XLS Test Document");
  $objProps->setSubject("Office XLS Test Document, Demo");
  $objProps->setDescription("Test document, generated by PHPExcel.");
  $objProps->setKeywords("office excel PHPExcel");
  $objProps->setCategory("Test");

//*************************************
  //设置当前的sheet索引,用于后续的内容操作。
  //一般只有在使用多个sheet的时候才需要显示调用。
  //缺省情况下,PHPExcel会自动创建第一个sheet被设置SheetIndex=0
  $objExcel->setActiveSheetIndex(0);

$objActSheet = $objExcel->getActiveSheet();

//网游类
  
  //设置当前活动sheet的名称
  $objActSheet->setTitle('网游类');

$objActSheet->setCellValue('A1','游戏名称');   //生成的excel中第一个sheet里面的第一行数据
  $objActSheet->setCellValue('B1','具体域名');
  $objActSheet->setCellValue('C1','服务器描述');
  $objActSheet->setCellValue('D1','线路属性');
  $objActSheet->setCellValue('E1','提交的服务器IP');
  $objActSheet->setCellValue('F1','对应优化路由条目');
  $objActSheet->setCellValue('G1','关键字优化');
  $objActSheet->setCellValue('H1','优化线路');
  $objActSheet->setCellValue('I1','优化状态');

foreach($result_webgame as $k1=>$v1){   //遍历从数据库中读取的数据
   $objActSheet->setCellValue('A'.($k1+2),$v1["gamename"]);
   $objActSheet->setCellValue('B'.($k1+2),$v1['domain']);
   $objActSheet->setCellValue('C'.($k1+2),$v1['gameserver']);
   $objActSheet->setCellValue('D'.($k1+2),$v1['line_attribute']);
   $objActSheet->setCellValue('E'.($k1+2),$v1['server_ip']);
   $objActSheet->setCellValue('F'.($k1+2),$v1['optimize_route']);
   $objActSheet->setCellValue('G'.($k1+2),$v1['keyword']);
   $objActSheet->setCellValue('H'.($k1+2),$v1['line']);
   $objActSheet->setCellValue('I'.($k1+2),$v1['optimize_status']);
  }
  
//网站类

//添加一个新的worksheet
  $objExcel->createSheet();
  $reource_ready=$objExcel->getSheet(1)->setTitle('网站类');
   
  $reource_ready->setCellValue('A1','网站名称');
  $reource_ready->setCellValue('B1','具体域名');
  $reource_ready->setCellValue('C1','线路属性');
  $reource_ready->setCellValue('D1','IP网段');
  $reource_ready->setCellValue('E1','优化线路');
  $reource_ready->setCellValue('F1','优化状态');
  
  foreach($result_website as $k1=>$v2){
   $reource_ready->setCellValue('A'.($k1+2),$v2["name"]);
   $reource_ready->setCellValue('B'.($k1+2),$v2['domain']);
   $reource_ready->setCellValue('C'.($k1+2),$v2['line_attribute']);
   $reource_ready->setCellValue('D'.($k1+2),$v2['ip']);
   $reource_ready->setCellValue('E'.($k1+2),$v2['line']);
   $reource_ready->setCellValue('F'.($k1+2),$v2['optimize_status']);
  }

//以此类推 可以导出含有多个sheet的excel

php导出excel数据的更多相关文章

  1. [转] Asp.Net 导出 Excel 数据的9种方案

    湛刚 de BLOG 原文地址 Asp.Net 导出 Excel 数据的9种方案 简介 Excel 的强大之处在于它不仅仅只能打开Excel格式的文档,它还能打开CSV格式.Tab格式.website ...

  2. oracle-sql脚本导出EXCEL数据

    在数据库中,经常有业务人员提出需求导出数据库中的业务数据,而且是每天.每周或每月定时导出.为了方便,可将sql查询的脚本 通过下面脚本来导出EXCEL数据. 1.将查询sql脚本(AAA.sql)放到 ...

  3. flask使用tablib导出excel数据表

    在网页中常常有导出数据的需求,尤其是一下管理类平台.在flask中要导出excel数据表,通常可以使用xlwt库,创建文件并逐行写入数据,但是使用起来总是感觉很麻烦.tablib库相对操作更加方便. ...

  4. c#中格式化导出Excel数据

    在项目开发过程中经常会遇到数据导出Excel.如果只是导出数据就好办了.但往往用户会有各种格式要求.加粗.边框.合并单元格.汇总等功能. 以下的方法是基于Excel模版方式写入数据导出的功能.可以最大 ...

  5. asp.net中导出excel数据的方法汇总

    1.由dataset生成 代码如下 复制代码 public void CreateExcel(DataSet ds,string typeid,string FileName)    {    Htt ...

  6. shopnc 导出Excel数据问题实例 && ajax 获取当前值并传递

    任务:从商家中心导出数据,各个商品所属情况. 商品导出到Excel文件功能 /导出exel 功能make-in-lemon public function createExcelOp(){ $mode ...

  7. 前端导出excel数据-jsonToExcel

    咳咳,好久没有写博了... 在工作中遇到了纯前端,将数据导出为excel文件.正文开始: 第一步 安装依赖: npm i xlsx 第二步 写导出函数: import XLSX from 'xlsx' ...

  8. vue导出excel数据表格功能

    前端工作量最多的就是需求,需求就是一直在变,比如当前端数据写完之后,需要用Excel把数据下载出来. 第一步安装依赖包,需要把代码下载你的项目当中 cnpm install  file-saver c ...

  9. POI通用导出Excel数据(包括样式设计)

    前言 前一段时间我写过通用的导入Excel,前几天也写了导出pdf格式的,还有我之前搞得导出Word,我在之前的博客也都介绍了导出和导入是一个道理,无非是一个获取一个是赋值.昨天有一位同仁看了我的Ex ...

随机推荐

  1. MouseOver/MouseOut vs MouseEnter/MouseLeave

    参考 http://www.oschina.net/question/234345_45280 这是jQuery提供的函数 要注意MouseOut 和 MouseLeave的区别 比如对元素A绑定Mo ...

  2. [WPF疑难]Hide me! not close

    原文 [WPF疑难]Hide me! not close [WPF疑难]Hide me! not close                               周银辉 有朋友遇到这样的一个问 ...

  3. LeetCode——Path Sum II

    Given a binary tree and a sum, find all root-to-leaf paths where each path's sum equals the given su ...

  4. 关于FTP操作的功能类

    自己在用的FTP类,实现了检查FTP链接以及返回FTP没有反应的情况. public delegate void ShowError(string content, string title); // ...

  5. ArcGIS Engine 改变线IPolyline的方向

    有时候需要改变一下线的方向来组成要要的图形,可以按一下方法来变换一下. 如果看官有好的方法的话,请不吝贴上为谢! private IPolyline ChangeDirection(IPolyline ...

  6. Codeforces Round #262 (Div. 2) 460C. Present(二分)

    题目链接:http://codeforces.com/problemset/problem/460/C C. Present time limit per test 2 seconds memory ...

  7. 【IE】trim()方法失效

    今天用了$.ajax异步提交,结果在ie8里面报错了,说不支持此对象,找了半天没找到什么问题. 后来发现是我data里面的参数传递,里面有个参数用到了trim()方法,这个方法在ie8里面是失效的. ...

  8. 数据库数据用Excel导出的3种方法

    将数据库数据用Excel导出主要有3种方法:用Excel.Application接口.用OleDB.用HTML的Tabel标签 方法1——Excel.Application接口: 首先,需要要Exce ...

  9. oracle常见问题

    1.无效的月份,一个可能是字符集的问题, alter session set nls_language=american alter session set nls_language='SIMPLIF ...

  10. 基于Sql Server 2008的分布式数据库的实践(一)

    原文 基于Sql Server 2008的分布式数据库的实践(一) 配置Sql Server 2008(Win7) 1.打开SQL server2012,使用windows身份登录 2.登录后,右键选 ...