php两种导出excel的方法
所需要的:jquery库,phpexcel插件,页面导出excel效果测试文件explode.php,excel导出功能实现文件exp.php和explode_excel.php,文件相关内容在此文下面:
explode.php:测试页面内容:访问此页面后单击explode1与explode2能导出两种不同效果的excel,代码如下:
<!DOCTYPE html PUBLIC ‘-//W3C//DTD XHTML 1.0 Transitional//EN‘ ‘http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd‘>
<html xmlns=‘http://www.w3.org/1999/xhtml‘>
<head>
<meta http-equiv=‘Content-Type‘ content=‘text/html; charset=utf-8‘ />
<script src=‘http://www1.qixoo.com/js/jquery.js‘></script>
<title></title>
<style>
td{
text-align:center;
font-size:12px;
font-family:Arial, Helvetica, sans-serif;
border:#1C7A80 1px solid;
color:#152122;
width:100px;
}
table,tr{
border-style:none;
}
.title{
background:#7DDCF0;
color:#FFFFFF;
font-weight:bold;
}
</style>
</head>
<body>
<script>
$(document).ready(function(){
$(‘#explode1‘).click(function(){
window.location.href=‘exp.php‘;
});
$(‘#explode2‘).click(function(){
window.location.href=‘explode_excel.php‘;
});
})
</script>
<table width="800" border="1">
<tr>
<td class=‘title‘>Date</td>
<td class=‘title‘ colspan="5" style=‘width:500px;text-align:center;‘>CSAT Score</td>
<td class=‘title‘>Grand Total</td>
<td class=‘title‘>CSAT</td>
</tr>
<tr>
<td>08/01/11</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0%</td>
</tr>
<tr>
<td>08/01/11</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0%</td>
</tr>
<tr>
<td>08/01/11</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0%</td>
</tr>
</table>
<br />
<input type=‘button‘ id=‘explode1‘ value=‘Explode‘ style=‘margin-left:620px;background-color:#10899E;color:white;padding:3px;font-weight:bold;‘><input type=‘button‘ id=‘explode2‘ value=‘Explode2‘ style=‘background-color:#10899E;color:white;padding:3px;font-weight:bold;margin-left:24px;‘>
</body>
</html>
第一种,用phpexcel插件导出excel,即exp.php文件中的内容:
<?php
header("content-type:text/html;charset=utf-8");
/** Error reporting */
error_reporting(E_ALL);
/** PHPExcel */
include_once ‘PHPExcel.php‘;
/** PHPExcel_Writer_Excel2003用于创建xls文件 */
include_once ‘PHPExcel/Writer/Excel5.php‘;
// Create new PHPExcel object
$objPHPExcel = new PHPExcel();
// Set properties
$objPHPExcel->getProperties()->setCreator("李汉团");
$objPHPExcel->getProperties()->setLastModifiedBy("李汉团");
$objPHPExcel->getProperties()->setTitle("Office 2007 XLSX Test Document");
$objPHPExcel->getProperties()->setSubject("Office 2007 XLSX Test Document");
$objPHPExcel->getProperties()->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.");
// Add some data
$objPHPExcel->setActiveSheetIndex(0);
$objPHPExcel->getActiveSheet()->SetCellValue(‘A1‘, ‘Date‘);
//合并单元格:
$objPHPExcel->getActiveSheet()->mergeCells(‘B1:F1‘);
$objPHPExcel->getActiveSheet()->SetCellValue(‘B1‘, ‘CSAT Score‘);
$objPHPExcel->getActiveSheet()->SetCellValue(‘G1‘, ‘Grand Total‘);
$objPHPExcel->getActiveSheet()->SetCellValue(‘H1‘, ‘CSAT‘);
$objPHPExcel->getActiveSheet()->SetCellValue(‘A2‘, ‘08/01/11‘);
$objPHPExcel->getActiveSheet()->SetCellValue(‘B2‘, ‘0‘);
$objPHPExcel->getActiveSheet()->SetCellValue(‘C2‘, ‘0‘);
$objPHPExcel->getActiveSheet()->SetCellValue(‘D2‘, ‘0‘);
$objPHPExcel->getActiveSheet()->SetCellValue(‘E2‘, ‘0‘);
$objPHPExcel->getActiveSheet()->SetCellValue(‘F2‘, ‘0‘);
$objPHPExcel->getActiveSheet()->SetCellValue(‘G2‘, ‘0‘);
$objPHPExcel->getActiveSheet()->SetCellValue(‘H2‘, ‘0%‘);
$objPHPExcel->getActiveSheet()->SetCellValue(‘A3‘, ‘08/01/11‘);
$objPHPExcel->getActiveSheet()->SetCellValue(‘B3‘, ‘0‘);
$objPHPExcel->getActiveSheet()->SetCellValue(‘C3‘, ‘0‘);
$objPHPExcel->getActiveSheet()->SetCellValue(‘D3‘, ‘0‘);
$objPHPExcel->getActiveSheet()->SetCellValue(‘E3‘, ‘0‘);
$objPHPExcel->getActiveSheet()->SetCellValue(‘F3‘, ‘0‘);
$objPHPExcel->getActiveSheet()->SetCellValue(‘G3‘, ‘0‘);
$objPHPExcel->getActiveSheet()->SetCellValue(‘H3‘, ‘0%‘);
$objPHPExcel->getActiveSheet()->SetCellValue(‘A4‘, ‘08/01/11‘);
$objPHPExcel->getActiveSheet()->SetCellValue(‘B4‘, ‘0‘);
$objPHPExcel->getActiveSheet()->SetCellValue(‘C4‘, ‘0‘);
$objPHPExcel->getActiveSheet()->SetCellValue(‘D4‘, ‘0‘);
$objPHPExcel->getActiveSheet()->SetCellValue(‘E4‘, ‘0‘);
$objPHPExcel->getActiveSheet()->SetCellValue(‘F4‘, ‘0‘);
$objPHPExcel->getActiveSheet()->SetCellValue(‘G4‘, ‘0‘);
$objPHPExcel->getActiveSheet()->SetCellValue(‘H4‘, ‘0%‘);
// Rename sheet
$objPHPExcel->getActiveSheet()->setTitle(‘Csat‘);
// Save Excel 2007 file
//$objWriter = new PHPExcel_Writer_Excel2007($objPHPExcel);
$objWriter = new PHPExcel_Writer_Excel5($objPHPExcel);
$objWriter->save(str_replace(‘.php‘, ‘.xls‘, __FILE__));
header("Pragma: public");
header("Expires: 0");
header("Cache-Control:must-revalidate,post-check=0,pre-check=0");
header("Content-Type:application/force-download");
header("Content-Type:application/vnd.ms-execl");
header("Content-Type:application/octet-stream");
header("Content-Type:application/download");
header("Content-Disposition:attachment;filename=csat.xls");
header("Content-Transfer-Encoding:binary");
$objWriter->save("php://output");
?>
第二种,直接用header导出html,指定样式的excel,即explode_excel.php中的内容,如下:
<?php
header ( "Content-type:application/vnd.ms-excel" );
header ( "Content-Disposition:filename=csat.xls" );
echo "<!DOCTYPE html PUBLIC ‘-//W3C//DTD XHTML 1.0 Transitional//EN‘ ‘http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd‘>
<html xmlns=‘http://www.w3.org/1999/xhtml‘>
<head>
<meta http-equiv=‘Content-Type‘ content=‘text/html; charset=UTF-8‘ />
<title>无标题文档</title>
<style>
td{
text-align:center;
font-size:12px;
font-family:Arial, Helvetica, sans-serif;
border:#1C7A80 1px solid;
color:#152122;
width:100px;
}
table,tr{
border-style:none;
}
.title{
background:#7DDCF0;
color:#FFFFFF;
font-weight:bold;
}
</style>
</head>
<body>
<table width=‘800‘ border=‘1‘>
<tr>
<td class=‘title‘>Date</td>
<td class=‘title‘ colspan=‘5‘ style=‘width:500px;text-align:center;‘>CSAT Score</td>
<td class=‘title‘>Grand Total</td>
<td class=‘title‘>CSAT</td>
</tr>
<tr>
<td>08/01/11</td>
<td>0</td>
<td>0</td>
<td>测试内容!!</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0%</td>
</tr>
<tr>
<td>08/01/11</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0%</td>
</tr>
<tr>
<td>08/01/11</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0</td>
<td>0%</td>
</tr>
</table>
</body>
</html>
";
?>
php两种导出excel的方法的更多相关文章
- .Net MVC 导入导出Excel总结(三种导出Excel方法,一种导入Excel方法) 通过MVC控制器导出导入Excel文件(可用于java SSH架构)
.Net MVC 导入导出Excel总结(三种导出Excel方法,一种导入Excel方法) [原文地址] 通过MVC控制器导出导入Excel文件(可用于java SSH架构) public cl ...
- asp.net中导出Excel的方法
一.asp.net中导出Excel的方法: 本文转载 在asp.net中导出Excel有两种方法,一种是将导出的文件存放在服务器某个文件夹下面,然后将文件地址输出在浏览器上:一种是将文件直接将文件输出 ...
- ASP.NET导出excel表方法汇总
asp.net里导出excel表方法汇总 1.由dataset生成 public void CreateExcel(DataSet ds,string typeid,string FileName) ...
- 懒人小工具:T4自动生成Model,Insert,Select,Delete以及导出Excel的方法
之前写了篇文章,懒人小工具:[自动生成Model,Insert,Select,Delete以及导出Excel的方法](http://www.jianshu.com/p/d5b11589174a),但是 ...
- 懒人小工具:T4生成实体类Model,Insert,Select,Delete以及导出Excel的方法
由于最近公司在用webform开发ERP,用到大量重复机械的代码,之前写了篇文章,懒人小工具:自动生成Model,Insert,Select,Delete以及导出Excel的方法,但是有人觉得这种方法 ...
- java根据xml配置文件导出excel通用方法
java web项目中时常会用到导出功能,而导出excel几乎是每个项目必备的功能之一.针对形形色色的导出方法及个人平时的工作经验,特将导出excel方法整理成通用的方法,根据xml配置来实现特定的导 ...
- highcharts .net导出服务 和 两种导出方式
highcharts 的Net导出服务 GitHub上整理的https://github.com/imclem/Highcharts-export-module-asp.net 引用两个程序集 sh ...
- C#两种创建快捷方式的方法
C#两种创建快捷方式的方法http://www.cnblogs.com/linmilove/archive/2009/06/10/1500989.html
- 懒人小工具:自动生成Model,Insert,Select,Delete以及导出Excel的方法
在开发的过程中,我们为了节约时间,往往会将大量重复机械的代码封装,考虑代码的复用性,这样我们可以节约很多时间来做别的事情.最近跳槽到一节webform开发的公司,主要是开发自己公司用的ERP.开始因为 ...
随机推荐
- ArcGIS实现在线与线交叉处打断线(批量)
from:http://he1989.blog.163.com/blog/static/2052041092012631112459704/ 打开ArcgisDesktop中的ArcToolBox 找 ...
- javascript获取当前的时间戳
JavaScript 获取当前时间戳:第一种方法: var timestamp = Date.parse(new Date()); 结果:1280977330000第二种方法: var timesta ...
- ASP.NET MVC Razor HtmlHelper扩展和自定义控件
先看示例代码: using System; using System.Collections.Generic; using System.Linq; using System.Web; using S ...
- 《深入.NET平台和C#编程》--题型释疑
本题考查抽象类和抽象方法的概念.定义抽象类或抽象方法使用的是abstract关键字,抽象类中可以包含抽象方法和非抽象方法,但抽象方法必须定义在抽象类中,抽象方法定义时只需要定义方法头,不可以定义方法体 ...
- 【C#】实现按Windows排序方式排序
很多人或许都遇到过类似的问题,C#读取的文件列表默认是按ASCII排序的,这样会出现一个问题就是10会排在2的前面. 那么是否可以解决呢,答案是肯定的.虽然这个是很早之前遇到的问题,这次突然想起来,就 ...
- MTK 平台上如何给 camera 添加一种 preview size
1,首先检查该项目所使用的是哪一颗sensor, 就以OV2659 为例OV2659 是一颗2M 的摄像头,Sensor 吐出的数据分辨率能达到 1600*1200,肯定是支持 1280*720 的分 ...
- c语言 指针的值
int num = 1; int *p = # printf("%x", &num);//打印 0x7dfe88 printf("\n%x&quo ...
- [转]基于四叉树(QuadTree)的LOD地形实现
实现基于四叉树的LOD地形时,我遇到的主要问题是如何修补地形裂缝. 本段我将描述使用LOD地形的优势,我实现LOD地形的思路,实现LOD地形核心模块的详细过程,以及修补地形裂缝的思路. 首先,LOD地 ...
- GEOS库学习之五:与GDAL/OGR结合使用
要学习GEOS库,肯定绕不开地理方面的东西.如果需要判断的两个多边形或几何图形,不是自己创建的,而是来自shapefile文件,那就得将GEOS库和GDAL/OGR库结合使用了.实际上只需要OGR就行 ...
- 学习Shell脚本编程(第1期)_Shell命令行书写规则
Shell命令行的书写规则 对Shell命令行基本功能的理解有助于编写更好的Shell程序,在执行Shell命令时多个命令可以在一个命令行上运行,但此时要使用分号(:)分隔命令,例如: [root@l ...