PHPExcel 插件使用详解
生活随笔
收集整理的這篇文章主要介紹了
PHPExcel 插件使用详解
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
PHPExcel 使用詳解
PHPExcel 是用來(lái)操作Office Excel 文檔的一個(gè)PHP類(lèi)庫(kù),它基于微軟的OpenXML標(biāo)準(zhǔn)和PHP語(yǔ)言。可以使用它來(lái)讀取、寫(xiě)入不同格式的電子表格。
代碼實(shí)例
下載 PHPExcel 類(lèi)到代碼文件夾下
在瀏覽器中運(yùn)行如下例子,將輸出excel 文件:
設(shè)置excel的屬性
//創(chuàng)建人 $objPHPExcel->getProperties()->setCreator("Maarten Balliauw"); //最后修改人 $objPHPExcel->getProperties()->setLastModifiedBy("Maarten Balliauw"); //標(biāo)題 $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."); //關(guān)鍵字 $objPHPExcel->getProperties()->setKeywords("office 2007 openxml php"); //種類(lèi) $objPHPExcel->getProperties()->setCategory("Test result file");格式操作
//設(shè)置當(dāng)前的sheet $objPHPExcel->setActiveSheetIndex(0); //設(shè)置sheet的name $objPHPExcel->getActiveSheet()->setTitle('Simple'); //設(shè)置單元格的值 $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'); //凍結(jié)窗口 $objPHPExcel->getActiveSheet()->freezePane('A2'); //保護(hù)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');設(shè)置單元格格式
//設(shè)置格式 // Set cell number formats echo date('H:i:s') . " Set cell number formats\n"; $objPHPExcel->getActiveSheet()->getStyle('E4')->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_CURRENCY_EUR_SIMPLE); $objPHPExcel->getActiveSheet()->duplicateStyle( $objPHPExcel->getActiveSheet()->getStyle('E4'), 'E5:E13' ); //設(shè)置寬width // Set column widths $objPHPExcel->getActiveSheet()->getColumnDimension('B')->setAutoSize(true); $objPHPExcel->getActiveSheet()->getColumnDimension('D')->setWidth(12); // 設(shè)置單元格高度 // 所有單元格默認(rèn)高度 $objPHPExcel->getActiveSheet()->getDefaultRowDimension()->setRowHeight(15); // 第一行的默認(rèn)高度 $objPHPExcel->getActiveSheet()->getRowDimension('1')->setRowHeight(30); //設(shè)置font $objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->setName('Candara'); $objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->setSize(20); $objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->setBold(true); $objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->setUnderline(PHPExcel_Style_Font::UNDERLINE_SINGLE); $objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->getColor()->setARGB(PHPExcel_Style_Color::COLOR_WHITE); $objPHPExcel->getActiveSheet()->getStyle('E1')->getFont()->getColor()->setARGB(PHPExcel_Style_Color::COLOR_WHITE); $objPHPExcel->getActiveSheet()->getStyle('D13')->getFont()->setBold(true); $objPHPExcel->getActiveSheet()->getStyle('E13')->getFont()->setBold(true); //設(shè)置align $objPHPExcel->getActiveSheet()->getStyle('D11')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT); $objPHPExcel->getActiveSheet()->getStyle('D12')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT); $objPHPExcel->getActiveSheet()->getStyle('D13')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT); $objPHPExcel->getActiveSheet()->getStyle('A18')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_JUSTIFY);//垂直居中 $objPHPExcel->getActiveSheet()->getStyle('A18')->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER); //設(shè)置column的border $objPHPExcel->getActiveSheet()->getStyle('A4')->getBorders()->getTop()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN); $objPHPExcel->getActiveSheet()->getStyle('B4')->getBorders()->getTop()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN); $objPHPExcel->getActiveSheet()->getStyle('C4')->getBorders()->getTop()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN); $objPHPExcel->getActiveSheet()->getStyle('D4')->getBorders()->getTop()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN); $objPHPExcel->getActiveSheet()->getStyle('E4')->getBorders()->getTop()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN); //設(shè)置border的color $objPHPExcel->getActiveSheet()->getStyle('D13')->getBorders()->getLeft()->getColor()->setARGB('FF993300'); $objPHPExcel->getActiveSheet()->getStyle('D13')->getBorders()->getTop()->getColor()->setARGB('FF993300'); $objPHPExcel->getActiveSheet()->getStyle('D13')->getBorders()->getBottom()->getColor()->setARGB('FF993300'); $objPHPExcel->getActiveSheet()->getStyle('E13')->getBorders()->getTop()->getColor()->setARGB('FF993300'); $objPHPExcel->getActiveSheet()->getStyle('E13')->getBorders()->getBottom()->getColor()->setARGB('FF993300'); $objPHPExcel->getActiveSheet()->getStyle('E13')->getBorders()->getRight()->getColor()->setARGB('FF993300'); //設(shè)置填充顏色 $objPHPExcel->getActiveSheet()->getStyle('A1')->getFill()->setFillType(PHPExcel_Style_Fill::FILL_SOLID); $objPHPExcel->getActiveSheet()->getStyle('A1')->getFill()->getStartColor()->setARGB('FF808080'); $objPHPExcel->getActiveSheet()->getStyle('B1')->getFill()->setFillType(PHPExcel_Style_Fill::FILL_SOLID); $objPHPExcel->getActiveSheet()->getStyle('B1')->getFill()->getStartColor()->setARGB('FF808080'); //加圖片 /*實(shí)例化插入圖片類(lèi)*/ $objDrawing = new PHPExcel_Worksheet_Drawing(); /*設(shè)置圖片路徑 切記:只能是本地圖片*/ $objDrawing->setPath($img_val); /*設(shè)置圖片高度*/ $objDrawing->setWidth(200); $img_height[] = $objDrawing->getHeight(); /*設(shè)置圖片要插入的單元格*/ $objDrawing->setCoordinates($img_k[$j].$i); /*設(shè)置圖片所在單元格的格式*/ $objDrawing->setOffsetX(10); $objDrawing->setOffsetY(10); $objDrawing->setRotation(0); $objDrawing->getShadow()->setVisible(true); $objDrawing->getShadow()->setDirection(50); $objDrawing->setWorksheet($objPHPExcel->getActiveSheet()); //導(dǎo)出Excel表格例子總結(jié)
以上是生活随笔為你收集整理的PHPExcel 插件使用详解的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: markdown学习/mou
- 下一篇: PHP底层原理分析和底层扩展编写