新開發的項目中,財務系統的數據報表須要導出EXCEL 而且須要在excel里加一些格式,因此就研究了一下phpExcel類,在這裏記錄一下PHPEXCEL類的使用方法,以便已後查看:php
phpExcel,操做excel很方便,尤爲是能夠方便的加入圖片,支持jpg gif png格式。瀏覽器
下載地址:http://www.codeplex.com/PHPExcelapp
下面是總結的幾個使用方法post
include ‘PHPExcel.php’;excel
include ‘PHPExcel/Writer/Excel2007.php’;code
//或者include ‘PHPExcel/Writer/Excel5.php’; 用於輸出.xls的orm
建立一個excelxml
$objPHPExcel = new PHPExcel();圖片
保存excel—2007格式ip
$objWriter = new PHPExcel_Writer_Excel2007($objPHPExcel);
//或者$objWriter = new PHPExcel_Writer_Excel5($objPHPExcel); 非2007格式
$objWriter->save(」xxx.xlsx」);
直接輸出到瀏覽器
$objWriter = new PHPExcel_Writer_Excel5($objPHPExcel);
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=」resume.xls」‘);
header(」Content-Transfer-Encoding:binary」);
$objWriter->save(’php://output’);
——————————————————————————————————————–
設置excel的屬性:
建立人
$objPHPExcel->getProperties()->setCreator(」Maarten Balliauw」);
最後修改人
$objPHPExcel->getProperties()->setLastModifiedBy(」Maarten Balliauw」);
標題
$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.」);
關鍵字
$objPHPExcel->getProperties()->setKeywords(」office 2007 openxml php」);
種類
$objPHPExcel->getProperties()->setCategory(」Test result file」);
——————————————————————————————————————–
設置當前的sheet
$objPHPExcel->setActiveSheetIndex(0);
設置sheet的name
$objPHPExcel->getActiveSheet()->setTitle(’Simple’);
設置單元格的值
$objPHPExcel->getActiveSheet()->setCellValue(’A1′, ‘String’);
$objPHPExcel->getActiveSheet()->setCellValue(’A2′, 12);
$objPHPExcel->getActiveSheet()->setCellValue(’A3′, true);
$objPHPExcel->getActiveSheet()->setCellValue(’C5′, ‘=SUM(C2:C4)’);
$objPHPExcel->getActiveSheet()->setCellValue(’B8′, ‘=MIN(B2:C5)’);
合併單元格
$objPHPExcel->getActiveSheet()->mergeCells(’A18:E22′);
分離單元格
$objPHPExcel->getActiveSheet()->unmergeCells(’A28:B28′);
保護cell
$objPHPExcel->getActiveSheet()->getProtection()->setSheet(true); // Needs to be set to true in order to enable any worksheet protection!
$objPHPExcel->getActiveSheet()->protectCells(’A3:E13′, ‘PHPExcel’);
設置格式
// Set cell number formats
echo date(’H:i:s’) . 」 Set cell number formatsn」;
$objPHPExcel->getActiveSheet()->getStyle(’E4′)->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_CURRENCY_EUR_SIMPLE);
$objPHPExcel->getActiveSheet()->duplicateStyle( $objPHPExcel->getActiveSheet()->getStyle(’E4′), ‘E5:E13′ );
設置寬width
// Set column widths
$objPHPExcel->getActiveSheet()->getColumnDimension(’B’)->setAutoSize(true);
$objPHPExcel->getActiveSheet()->getColumnDimension(’D’)->setWidth(12);