php excelÀà phpExcelʹÓ÷½·¨½éÉÜ

5年以前  |  阅读数:654 次  |  编程语言:PHP 

ÏÂÔصØÖ£ºhttp://www.codeplex.com/PHPExcel
¡¡¡¡ÏÂÃaeÊÇ×ܽaµÄ¼¸¸oʹÓÃ
½¨
¡¡¡¡include ¡®PHPExcel.php';
¡¡¡¡include ¡®PHPExcel/Writer/Excel2007.php';
¡¡¡¡//»oÕßinclude ¡®PHPExcel/Writer/Excel5.php'; ÓÃÓÚÊa³o.xlsµÄ
¡¡¡¡´´½¨Ò»¸oexcel
¡¡¡¡$objPHPExcel = new PHPExcel();
¡¡¡¡±£´aeexcel¡ª2007¸ñʽ
¡¡¡¡$objWriter = new PHPExcel_Writer_Excel2007($objPHPExcel);
¡¡¡¡//»oÕß$objWriter = new PHPExcel_Writer_Excel5($objPHPExcel);
Ç2007¸ñʽ
¡¡¡¡$objWriter->save("xxx.xlsx");
¡¡¡¡Ö±½ÓÊa³oµ½a¯ÀÀÆ÷
¡¡¡¡$objWriter = new PHPExcel_Writer_Excel5($objPHPExcel);
¡¡¡¡header("Pragma: public");
¡¡¡¡header("Expires: 0¡a);
¡¡¡¡header("Cache-Control:must-revalidate, post-check=0, pre-check=0¡a);
¡¡¡¡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');
¡¡¡¡¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¨C
¡¡¡¡ÉeÖÃexcelµÄÊoÐÔ£º
¡¡¡¡´´½¨ÈË
¡¡¡¡$objPHPExcel->getProperties()->setCreator("Maarten Balliauw");
¡¡¡¡×iºoÐÞ¸ÄÈË
¡¡¡¡$objPHPExcel->getProperties()->setLastModifiedBy("Maarten Balliauw");
¡¡¡¡±eÌa
¡¡¡¡$objPHPExcel->getProperties()->setTitle("Office 2007 XLSX Test Document");
¡¡¡¡ÌaÄ¿
¡¡¡¡$objPHPExcel->getProperties()->setSubject("Office 2007 XLSX Test Document");
¡¡¡¡ÃeÊo
¡¡¡¡$objPHPExcel->getProperties()->setDescription("Test document for Office 2007 XLSX, generated using PHP classes.");
¡¡¡¡¹Ø¼u×Ö
¡¡¡¡$objPHPExcel->getProperties()->setKeywords("office 2007 openxml php");
¡¡¡¡ÖÖÀa
¡¡¡¡$objPHPExcel->getProperties()->setCategory("Test result file");
¡¡¡¡¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¡ª¨C
¡¡¡¡ÉeÖõ±Ç°µÄsheet
¡¡¡¡$objPHPExcel->setActiveSheetIndex(0);
¡¡¡¡ÉeÖÃsheetµÄname
¡¡¡¡$objPHPExcel->getActiveSheet()->setTitle('Simple');
¡¡¡¡ÉeÖõ¥Ôª¸ñµÄÖµ
¡¡¡¡$objPHPExcel->getActiveSheet()->setCellValue('A1¡a, ¡®String');
¡¡¡¡$objPHPExcel->getActiveSheet()->setCellValue('A2¡a, 12);
¡¡¡¡$objPHPExcel->getActiveSheet()->setCellValue('A3¡a, true);
¡¡¡¡$objPHPExcel->getActiveSheet()->setCellValue('C5¡a, ¡®=SUM(C2:C4)');
¡¡¡¡$objPHPExcel->getActiveSheet()->setCellValue('B8¡a, ¡®=MIN(B2:C5)');
¡¡¡¡ºÏ²¢µ¥Ôª¸ñ
¡¡¡¡$objPHPExcel->getActiveSheet()->mergeCells('A18:E22¡a);
¡¡¡¡*ÖÀeµ¥Ôª¸ñ
¡¡¡¡$objPHPExcel->getActiveSheet()->unmergeCells('A28:B28¡a);
±£»¤cell
¡¡¡¡$objPHPExcel->getActiveSheet()->getProtection()->setSheet(true); // Needs to be set to true in order to enable any worksheet protection!
¡¡¡¡$objPHPExcel->getActiveSheet()->protectCells('A3:E13¡a, ¡®PHPExcel');
¡¡¡¡ÉeÖøñʽ
¡¡¡¡// Set cell number formats
¡¡¡¡echo date('H:i:s') . " Set cell number formatsn";
¡¡¡¡$objPHPExcel->getActiveSheet()->getStyle('E4¡a)->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_CURRENCY_EUR_SIMPLE);
¡¡¡¡$objPHPExcel->getActiveSheet()->duplicateStyle( $objPHPExcel->getActiveSheet()->getStyle('E4¡a), ¡®E5:E13¡a );
¡¡¡¡ÉeÖÿiwidth
¡¡¡¡// Set column widths
¡¡¡¡$objPHPExcel->getActiveSheet()->getColumnDimension('B')->setAutoSize(true);
¡¡¡¡$objPHPExcel->getActiveSheet()->getColumnDimension('D')->setWidth(12);
¡¡¡¡ÉeÖÃfont
¡¡¡¡$objPHPExcel->getActiveSheet()->getStyle('B1¡a)->getFont()->setName('Candara');
¡¡¡¡$objPHPExcel->getActiveSheet()->getStyle('B1¡a)->getFont()->setSize(20);
¡¡¡¡$objPHPExcel->getActiveSheet()->getStyle('B1¡a)->getFont()->setBold(true);
¡¡¡¡$objPHPExcel->getActiveSheet()->getStyle('B1¡a)->getFont()->setUnderline(PHPExcel_Style_Font::UNDERLINE_SINGLE);
¡¡¡¡$objPHPExcel->getActiveSheet()->getStyle('B1¡a)->getFont()->getColor()->setARGB(PHPExcel_Style_Color::COLOR_WHITE);
¡¡¡¡$objPHPExcel->getActiveSheet()->getStyle('E1¡a)->getFont()->getColor()->setARGB(PHPExcel_Style_Color::COLOR_WHITE);
¡¡¡¡$objPHPExcel->getActiveSheet()->getStyle('D13¡a)->getFont()->setBold(true);
¡¡¡¡$objPHPExcel->getActiveSheet()->getStyle('E13¡a)->getFont()->setBold(true);
¡¡¡¡ÉeÖÃalign
¡¡¡¡$objPHPExcel->getActiveSheet()->getStyle('D11¡a)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);
¡¡¡¡$objPHPExcel->getActiveSheet()->getStyle('D12¡a)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);
¡¡¡¡$objPHPExcel->getActiveSheet()->getStyle('D13¡a)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);
¡¡¡¡$objPHPExcel->getActiveSheet()->getStyle('A18¡a)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_JUSTIFY);
¡¡¡¡//´¹Ö±¾ÓÖÐ
¡¡¡¡$objPHPExcel->getActiveSheet()->getStyle('A18¡a)->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
¡¡¡¡ÉeÖÃcolumnµÄborder
¡¡¡¡$objPHPExcel->getActiveSheet()->getStyle('A4¡a)->getBorders()->getTop()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
¡¡¡¡$objPHPExcel->getActiveSheet()->getStyle('B4¡a)->getBorders()->getTop()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
¡¡¡¡$objPHPExcel->getActiveSheet()->getStyle('C4¡a)->getBorders()->getTop()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
¡¡¡¡$objPHPExcel->getActiveSheet()->getStyle('D4¡a)->getBorders()->getTop()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
¡¡¡¡$objPHPExcel->getActiveSheet()->getStyle('E4¡a)->getBorders()->getTop()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
¡¡¡¡ÉeÖÃborderµÄcolor
¡¡¡¡$objPHPExcel->getActiveSheet()->getStyle('D13¡a)->getBorders()->getLeft()->getColor()->setARGB('FF993300¡a);
¡¡¡¡$objPHPExcel->getActiveSheet()->getStyle('D13¡a)->getBorders()->getTop()->getColor()->setARGB('FF993300¡a);
¡¡¡¡$objPHPExcel->getActiveSheet()->getStyle('D13¡a)->getBorders()->getBottom()->getColor()->setARGB('FF993300¡a);
¡¡¡¡$objPHPExcel->getActiveSheet()->getStyle('E13¡a)->getBorders()->getTop()->getColor()->setARGB('FF993300¡a);
¡¡¡¡$objPHPExcel->getActiveSheet()->getStyle('E13¡a)->getBorders()->getBottom()->getColor()->setARGB('FF993300¡a);
¡¡¡¡$objPHPExcel->getActiveSheet()->getStyle('E13¡a)->getBorders()->getRight()->getColor()->setARGB('FF993300¡a);
¡¡¡¡ÉeÖÃÌi³aÑÕÉ«
¡¡¡¡$objPHPExcel->getActiveSheet()->getStyle('A1¡a)->getFill()->setFillType(PHPExcel_Style_Fill::FILL_SOLID);
¡¡¡¡$objPHPExcel->getActiveSheet()->getStyle('A1¡a)->getFill()->getStartColor()->setARGB('FF808080¡a);
¡¡¡¡$objPHPExcel->getActiveSheet()->getStyle('B1¡a)->getFill()->setFillType(PHPExcel_Style_Fill::FILL_SOLID);
¡¡¡¡$objPHPExcel->getActiveSheet()->getStyle('B1¡a)->getFill()->getStartColor()->setARGB('FF808080¡a);
¡¡¡¡¼ÓͼƬ
¡¡¡¡$objDrawing = new PHPExcel_Worksheet_Drawing();
¡¡¡¡$objDrawing->setName('Logo');
¡¡¡¡$objDrawing->setDescription('Logo');
¡¡¡¡$objDrawing->setPath('./images/officelogo.jpg');
¡¡¡¡$objDrawing->setHeight(36);
¡¡¡¡$objDrawing->setWorksheet($objPHPExcel->getActiveSheet());
¡¡¡¡$objDrawing = new PHPExcel_Worksheet_Drawing();
¡¡¡¡$objDrawing->setName('Paid');
¡¡¡¡$objDrawing->setDescription('Paid');
¡¡¡¡$objDrawing->setPath('./images/paid.png');
¡¡¡¡$objDrawing->setCoordinates('B15¡a);
¡¡¡¡$objDrawing->setOffsetX(110);
¡¡¡¡$objDrawing->setRotation(25);
¡¡¡¡$objDrawing->getShadow()->setVisible(true);
¡¡¡¡$objDrawing->getShadow()->setDirection(45);
¡¡¡¡$objDrawing->setWorksheet($objPHPExcel->getActiveSheet());
¡¡¡¡ÔÚĬÈÏsheetºo£¬´´½¨Ò»¸oworksheet
¡¡¡¡echo date('H:i:s') . " Create new Worksheet objectn";
¡¡¡¡$objPHPExcel->createSheet();
¡¡¡¡$objWriter = PHPExcel_IOFactory::createWriter($objExcel, 'Excel5');
¡¡¡¡$objWriter-save('php://output');

Copyright© 2013-2020

All Rights Reserved 京ICP备2023019179号-8