代码改变世界

PHP实现Excel导出

2012-01-12 16:59  少毅  阅读(248)  评论(0编辑  收藏  举报

使用PHP实现Excel的导出,可以利用PHPExcel这个开源的Excel操作库,相关下载地址可参考http://phpexcel.codeplex.com/

PHPExcel具体使用方法如下(包含了各种常用的设置):

/**
*首先将PHPExcel包含到页面中,需要包含以下两个文件
*/
require_once 'PHPExcel.php';
require_once 'PHPExcel/IOFactory.php';

$objPHPExcel = new PHPExcel(); //初始化PHPExcel对象
$objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(18); //设置A列宽
$objPHPExcel->getActiveSheet()->getRowDimension(1)->setRowHeight(30); //设置第1行高
$objPHPExcel->getActiveSheet()->mergeCells('A1:P1'); //合并单元格
$objPHPExcel->getActiveSheet()->getStyle('A1')->getFont()->setBold(true); //A1加粗
$objPHPExcel->getActiveSheet()->getStyle('A1')->getFont()->setSize(20); //A1字体大小
$objPHPExcel->getActiveSheet()->getStyle('A1')->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_TEXT);
//A1文本格式
$objPHPExcel->getActiveSheet()->getStyle('A1')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER); //A1水平居中
$objPHPExcel->getActiveSheet()->getStyle('A1')->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER); //A1垂直居中
$objPHPExcel->getActiveSheet()->setCellValue('A1', 'test'); //A1赋值

$objPHPExcel->getActiveSheet()->setTitle('title'); //title
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); //save

/**
*保存成文件
*/
header( "Cache-Control: public" );
header( "Pragma: public" );
header("Content-type:application/vnd.ms-excel");
header("Content-Disposition:attachment;filename=".$file_name);
header('Content-Type:APPLICATION/OCTET-STREAM');
$objWriter->save('php://output');