最近因为工作需要,将数据库中的指定数据导出到对应Excel表格式中,下面是我做此功能的准备工作和代码,我的是在Linux环境中使用:
准备工作:
1.首先,下载一个PHPExcel类包,下方是上传的类包的下载路径
http://pan.baidu.com/s/1pJA8TVP
2.安装PHPExcel到CI中
a). 解压压缩包中的Classes文件夹中的内容到application\libraries\目录下,目录结构如下:
—application\libraries\PHPExcel.php
— application\libraries\PHPExcel (文件夹)
b).修改application\libraries\PHPExcel\IOFactory.php 文件
— 将文件中其定义的类名从PHPExcel_IOFactory改为IOFactory,遵从CI类命名规则。
—将其构造函数改为public
3.编写代码
a).导出Excel表格
header('Content-Type: application/vnd.ms-excel;');
header('Content-Disposition: attachment;filename="text.xls"');
header('Cache-Control: max-age=0');
include 'PHPExcel/Writer/Excel2007.php';
$this->load->library('PHPExcel');
$this->load->library('PHPExcel/IOFactory');
$objPHPExcel = new PHPExcel();
$objWriter = new PHPExcel_Writer_Excel2007($objPHPExcel);
注解:header中是必填写的头文件信息
header(‘Content-Type: application/vnd.ms-excel;’); 将查询结果导出到Excel中
header(‘Content-Disposition: attachment;filename=”text.xls”’); 文件名
include,和$this->load->library都是用来载入文件的
4.写入头文件
echo "<table width='500' border='1' cellspacing='2' cellpadding='2'>
<tr align='center' style='background-color:#E5E8ED'>
<td rowspan='3'> </td>
<td rowspan='3'> </td>
<td > </td>
<td > </td>
<td > </td>
<td > </td>
<td rowspan='3' > </td>
<td rowspan='3' > )</td>
<td rowspan='3' > </td>
<td colspan='7'> </td>
<td colspan='9'> </td>
<td colspan='4'> </td>
</tr>
<tr align='center' style='background-color:#E5E8ED'>
<td colspan='4' > </td>
<td colspan='3' > </td>
<td> </td>
<td colspan='3'> </td>
<td colspan='2'> </td>
<td colspan='2'> </td>
<td colspan='5'> </td>
<td colspan='2'> </td>
<td colspan='2'> </td>
</tr>
<tr align='center' style='background-color:#E5E8ED'>
<td > </td>
<td> </td>
<td > </td>
<td > </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
<td> </td>
</tr>";
这样头文件就写好了