ThinkPHP中利用PHPEXCEL进行excel导出
2013-07-31 11:55
399 查看
关于使用PHPEXCEL,首先需要把下载好的文件更名为Excel(PHPExcel.php PHPExcel文件)放入ThinkPHP包的Vendor文件夹中,算是导入了一个新类。
其次就是关于导出函数的使用,具体代码如下所示:
public function imorder()
{
$list = $_SESSION['depart']; //通过SESSION传递过来的已经在数据库中查询出来的数据集。
$num=count($list); // 对查询出来的数据进行统计。
error_reporting(E_ALL);
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE);
Vendor('Excel.PHPExcel');
Vendor('Excel.PHPExcel.IOFactory');
Vendor('Excel.PHPExcel.Reader.Excel5');
$objPHPExcel = new PHPExcel();
$objPHPExcel->getProperties()->setCreator("Maarten Balliauw")
->setLastModifiedBy("Maarten Balliauw")
->setTitle("Office 2007 XLSX Test Document")
->setSubject("Office 2007 XLSX Test Document")
->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.")
->setKeywords("office 2007 openxml php")
->setCategory("Test result file");
$objPHPExcel->setActiveSheetIndex(0)
->setCellValue('A1', '学工号') //确定导出的表中的每一列的名称。
->setCellValue('B1', '姓名')
->setCellValue('C1', '班级名称')
->setCellValue('D1', '消费日期')
->setCellValue('E1', '消费时间')
->setCellValue('F1', '消费年度')
->setCellValue('G1', '消费金额')
->setCellValue('H1', '余额')
->setCellValue('I1', '操作员');
for ($i=0; $i < $num; $i++) {
$n=$i+2;
$objPHPExcel->setActiveSheetIndex(0)
->setCellValue('A'.$n, $list[$i]['STUEMPNO']) //每一列对应的数值。
->setCellValue('B'.$n, $list[$i]['CUSTNAME'])
->setCellValue('C'.$n, $list[$i]['CLASSNAME'])
->setCellValue('D'.$n, $list[$i]['XFDATE'])
->setCellValue('E'.$n, $list[$i]['XFTIME'])
->setCellValue('F'.$n, $list[$i]['NDNAME'])
->setCellValue('G'.$n, $list[$i]['JE'])
->setCellValue('H'.$n, $list[$i]['YE'])
->setCellValue('I'.$n, $list[$i]['FIRSTNAME']);
}
$objPHPExcel->getActiveSheet()->setTitle('title');
$objPHPExcel->setActiveSheetIndex(0);
spl_autoload_register(array('Think','autoload'));
header('Content-Type: application/vnd.ms-excel');
header('Content-Disposition: attachment;filename="文件名.xls"'); //导出excel文件的名字是已经定义过的。
header('Cache-Control: max-age=0');
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
$objWriter->save('php://output');
exit;
}
其次就是关于导出函数的使用,具体代码如下所示:
public function imorder()
{
$list = $_SESSION['depart']; //通过SESSION传递过来的已经在数据库中查询出来的数据集。
$num=count($list); // 对查询出来的数据进行统计。
error_reporting(E_ALL);
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE);
Vendor('Excel.PHPExcel');
Vendor('Excel.PHPExcel.IOFactory');
Vendor('Excel.PHPExcel.Reader.Excel5');
$objPHPExcel = new PHPExcel();
$objPHPExcel->getProperties()->setCreator("Maarten Balliauw")
->setLastModifiedBy("Maarten Balliauw")
->setTitle("Office 2007 XLSX Test Document")
->setSubject("Office 2007 XLSX Test Document")
->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.")
->setKeywords("office 2007 openxml php")
->setCategory("Test result file");
$objPHPExcel->setActiveSheetIndex(0)
->setCellValue('A1', '学工号') //确定导出的表中的每一列的名称。
->setCellValue('B1', '姓名')
->setCellValue('C1', '班级名称')
->setCellValue('D1', '消费日期')
->setCellValue('E1', '消费时间')
->setCellValue('F1', '消费年度')
->setCellValue('G1', '消费金额')
->setCellValue('H1', '余额')
->setCellValue('I1', '操作员');
for ($i=0; $i < $num; $i++) {
$n=$i+2;
$objPHPExcel->setActiveSheetIndex(0)
->setCellValue('A'.$n, $list[$i]['STUEMPNO']) //每一列对应的数值。
->setCellValue('B'.$n, $list[$i]['CUSTNAME'])
->setCellValue('C'.$n, $list[$i]['CLASSNAME'])
->setCellValue('D'.$n, $list[$i]['XFDATE'])
->setCellValue('E'.$n, $list[$i]['XFTIME'])
->setCellValue('F'.$n, $list[$i]['NDNAME'])
->setCellValue('G'.$n, $list[$i]['JE'])
->setCellValue('H'.$n, $list[$i]['YE'])
->setCellValue('I'.$n, $list[$i]['FIRSTNAME']);
}
$objPHPExcel->getActiveSheet()->setTitle('title');
$objPHPExcel->setActiveSheetIndex(0);
spl_autoload_register(array('Think','autoload'));
header('Content-Type: application/vnd.ms-excel');
header('Content-Disposition: attachment;filename="文件名.xls"'); //导出excel文件的名字是已经定义过的。
header('Cache-Control: max-age=0');
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
$objWriter->save('php://output');
exit;
}
相关文章推荐
- ThinkPHP3.2利用PHPExcel导出Excel
- thinkphp利用phpexcel实现导出导入excel
- Thinkphp 3.2.2 利用phpexcel将数据通过excel导出
- 利用phpExcel实现Excel数据的导入导出(全步骤详细解析)
- 利用phpExcel实现Excel数据的导入导出(全步骤详细解析)
- 利用PHPExcel导出Excel并设置Excel格式以及数据源
- 利用PHPExcel导出Excel并设置Excel格式以及数据源
- ThinkPHP使用PHPExcel实现Excel数据导入导出完整实例
- 利用PHPExcel读取Excel的数据和导出数据到Excel
- Thinkphp框架下PHPExcel实现Excel数据的批量化导入导出
- java利用poi对excel进行操作可导入导出
- 利用PHPExcel导出Excel并设置Excel格式
- 利用poi进行数据的excel导出
- 利用PHPExcel导出数据到excel
- ThinkPHP使用PHPexcel导出excel文件(已封装的输出类)
- poi导出excel,支持2007和2003,支持javabean,利用反射对poi进行简单封装,支持任意实体和乱序的excel表格
- ThinkPHP中使用PHPExcel导出Excel
- ThinkPHP3.2 + PHPExcel 进行execl文件导出操作
- 利用phpExcel实现Excel数据的导入导出(全步骤详细解析)
- 利用POI进行Excel的导出