thinkphp使用 phpexcel导出excel

本文介绍了一种利用PHPExcel库从PHP程序导出数据到Excel的方法。通过设置样式、列宽及填充数据等步骤,实现了学生信息的批量导出。

开发板推荐:天空星STM32F407VET6开发板

超高性价比 STM32主控 | 超高主频 | 一板兼容百芯 | 比赛神器 | 沉金彩色丝印

附上我在开发中所写一些代码.

public function exportExcel(){

//首先将要写入表格的数据都读入一个数组,比如 $stulist

//读入操作这里省略 ……

//以下开始写入excel
Ext(“PHPExcel”);  //加载 phpexcel类,根据自己存放类的位置,换为自己的加载方式
$objPHPExcel = new PHPExcel();
$objPHPExcel->getProperties()->setCreator(“Da”)

->setLastModifiedBy(“Da”)

->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);   //这里是表,即sheet,一个excel文件可以有很多个表(sheet)
$objPHPExcel->getActiveSheet(0)->setTitle($cname);  //sheet的标题
//$objActSheet = $objExcel->getActiveSheet();

//设置宽度  默认大小  字体
//$objPHPExcel->getActiveSheet()->getColumnDimension(‘A’)->setWidth(15);  //可以单独设置某一列的宽度
//$objPHPExcel->getActiveSheet()->getColumnDimension(‘B’)->setWidth(15);
$objPHPExcel->getActiveSheet()->getDefaultColumnDimension()->setWidth(15);  //设置全部的列宽度
$objPHPExcel->getActiveSheet()->getDefaultStyle()->getFont()->setName(‘Arial’);  //设置字体
$objPHPExcel->getActiveSheet()->getDefaultStyle()->getFont()->setSize(10);          //设置文字大小

//第一行的列名称
$objPHPExcel->getActiveSheet(0)->setCellValue(‘A1′,’学号’);
$objPHPExcel->getActiveSheet(0)->setCellValue(‘B1′,’姓名’);
$objPHPExcel->getActiveSheet(0)->setCellValue(‘C1′,’参与项目数’);
$objPHPExcel->getActiveSheet(0)->setCellValue(‘D1′,’完成项目数’);
spl_autoload_register(array(‘Think’,'autoload’));
foreach($stulist as $key => $value){
static $i = 2;
$name[$i]['username']     =  $value['username'];
$name[$i]['realname']     =  $value['realname'];
$name[$i]['joined']          =  $value['joined'];
$name[$i]['finished']       =  $value['finished'];

$objPHPExcel->getActiveSheet(0)->setCellValue(‘A’ . $i, $name[$i]['username']);
$objPHPExcel->getActiveSheet(0)->setCellValue(‘B’ . $i, $name[$i]['realname']);
$objPHPExcel->getActiveSheet(0)->setCellValue(‘C’ . $i, $name[$i]['joined']);
$objPHPExcel->getActiveSheet(0)->setCellValue(‘D’ . $i, $name[$i]['finished']);
$i++;
}

header(‘Content-Type: application/vnd.ms-excel’);
header(‘Content-Disposition: attachment;filename=’.$cname.’.xls’);
header(‘Cache-Control: max-age=0′);

$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, ‘Excel5′);
$objWriter->save(‘php://output’);       //这里生成excel后会弹出下载
exit;

}

 

© 2012, 睿风. 版权所有.

本文固定链接: http://blog.rifun.net/2012-03-04/279.html | 睿风

开发板推荐:天空星STM32F407VET6开发板

超高性价比 STM32主控 | 超高主频 | 一板兼容百芯 | 比赛神器 | 沉金彩色丝印

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值