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.开始因为 ...
随机推荐
- EasyUI中页面必须刷新才显示tree组件最新数据的BUG解决方案
在URL地址后面加个时间戳,这样就避免从浏览器缓存里读取数据了 $("#devtree").tree({ url: '/Deviceinfo/ModelsTree.aspx?cmd ...
- Redis word bak
@font-face { font-family: "Arial"; }@font-face { font-family: "Courier New"; }@f ...
- android 合并两个jar包
你所要导出的类里边用到了别的jar包.比如说你写的类连接了数据库,用到数据库驱动包oracl.jar(也就是你导入到Myeclipse或eclipse的jdbc包).. .在dos环境下,进入到D盘的 ...
- 在PLSQL中不能使用中文作为查询条件查询数据
解决方法: 1.在oracle服务端的注册表中找到oracle-->key_oradb11g_home1,在右侧找到NLS_LANG,将其数值数据改为SIMPLIFIED CHINESE_CH ...
- 如何在 kernel 和 hal 层读取同一个标志
很多时候我们需要从 HAL 层(Hardware Abstract Layer)传一个标志给 kernel 层.一般这种传递是不能直接通过定义全局变量来实现的. 此时可以通过读写文件来实现该标志. 譬 ...
- Linux Shell编程二
以"``"符号包含的内容不是字符串,而是代表这是一个shell命令. echo "today is" `date` 前面是字符,后面`date`表示执行date ...
- Android:30分钟弄明白Touch事件分发机制
Touch事件分发中只有两个主角:ViewGroup和View.Activity的Touch事件事实上是调用它内部的ViewGroup的Touch事件,可以直接当成ViewGroup处理. View在 ...
- Opencv step by step - 图像融合
两个图像的融合就是像素的融合了,其实手动操作即可,用函数操作更方便了. 下面代码的作用是融合阿狸和doctor,很和谐有木有! #include <cv.h> #include <h ...
- PHP PC端接入支付宝和微信感悟
想着中秋节的时候把异步线程学习完,同事说有个PHP的支付要帮忙做一下,虽然中秋节计划是把C#的异步学完,不过还是喜欢挑战,好久没有像大学一样这么认真的熬夜解决问题了.由于在大学学过asp,它和php有 ...
- 8个免费实用的C++GUI库(转载)
C++标准中并没有包含GUI,这也使得C++开发图形化界面需要依赖于第三方的库.实际上,图形界面恰恰是C++的强项,小到平常使用的各类桌面软件,大到魔兽世界这样的游戏,都是C++擅长的地方.C++ ...