核心代碼:
//引入PHPExcelvendor('PHPExcel.PHPExcel');// Create new PHPExcel object$objPHPExcel = new PHPExcel();//設置文檔屬性$objPHPExcel->getProperties()    ->setCreator("web100.cc")    ->setLastModifiedBy("web100.cc")    ->setTitle("Office 2007 XLSX Test Document")    ->setSubject("Office 2007 XLSX Test Document")    ->setDescription("Test document generated using PHP classes.")    ->setKeywords("office 2007 openxml php")    ->setCategory("Test result file");    //設置當前活動的sheet$objPHPExcel->setActiveSheetIndex(0);//選定當前Sheet$objActSheet = $objPHPExcel->11getActiveSheet(); //設置sheet名字$objActSheet->setTitle('phpexcel demo'); //設置默認行高$objActSheet->getDefaultRowDimension()->setRowHeight(15); //由PHPExcel根據傳入內容自動判斷單元格內容類型$objActSheet->setCellValue('A1', "Firstname");$objActSheet->setCellValue('B1', "Lastname");$objActSheet->setCellValue('C1', "Phone");$objActSheet->setCellValue('D1', "Fax");$objActSheet->setCellValue('E1', "Address");$objActSheet->setCellValue('F1', "ZIP");$objActSheet->setCellValue('G1', "DATE");  $objActSheet->setCellValueByColumnAndRow(0, 8, 'firstname');$objActSheet->setCellValueByColumnAndRow(1, 8, 'lastname');  // 單元格填充值$objActSheet->setCellValue('A2', "小風");$objActSheet->setCellValue('B2', "wang");//設置列寬$objActSheet->getColumnDimension('C')->setWidth('20');  // 設置行高$objActSheet->getRowDimension('9')->setRowHeight(20); //第9行// 設置字體$objActSheet->getStyle('A1')->getFont()->setName('宋體');// 字號$objActSheet->getStyle('A1')->getFont()->setSize(12);// 加粗$objActSheet->getStyle('A1')->getFont()->setBold(true);//說明:$objActSheet->getStyle('A1:G10'),可以通過這種方式來選擇一片單元格!// 設置單元格格式$objActSheet->getCell('C2')->setValueExplicit('861391327543258', PHPExcel_Cell_DataType::TYPE_NUMERIC); // 日期$objActSheet->setCellValue('G2', '2008-12-31');$objActSheet->getStyle('G2')->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_DATE_YYYYMMDDSLASH); // 時間戳$time = gmmktime(0,0,0,12,31,2008); // int(1230681600)$objActSheet->setCellValue('G3', PHPExcel_Shared_Date::PHPToExcel($time));$objActSheet->getStyle('G3')->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_DATE_YYYYMMDDSLASH); // url$objActSheet->setCellValue('G11', 'www.spalybow.com');$objActSheet->getCell('G11')->getHyperlink()->setUrl('http://www.spalybow.com'); // 另一個sheet$objActSheet->setCellValue('G12', 'sheetb');$objActSheet->getCell('G12')->getHyperlink()->setUrl("sheet://'sheetb'!A1"); // 水平居上$objActSheet->getStyle('A9:B9')->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_TOP); // 單元格換行$objActSheet->getStyle('G2:G3')->getAlignment()->setWrapText(true); // 合并$objActSheet->mergeCells('A18:E22');  // 隱藏D列$objActSheet->getColumnDimension('D')->setVisible(false); //$objActSheet->getColumnDimension('E')->setOutlineLevel(1);$objActSheet->getColumnDimension('E')->setVisible(false);$objActSheet->getColumnDimension('F')->setOutlineLevel(1);$objActSheet->getColumnDimension('F')->setVisible(false);$objActSheet->getColumnDimension('F')->setCollapsed(true); // 固定第一行$objActSheet->freezePane('A2'); // 保護工作表$objActSheet->getProtection()->setPassword('PHPExcel');$objActSheet->getProtection()->setSheet(true);$objActSheet->getProtection()->setSort(true);$objActSheet->getProtection()->setInsertRows(true);$objActSheet->getProtection()->setFormatCells(true); //設置邊框$sharedStyle1 = new PHPExcel_Style();$sharedStyle1->applyFromArray(  array('borders' => array(                'left'    => array('style' => PHPExcel_Style_Border::BORDER_MEDIUM)              )     ));$objActSheet->setSharedStyle($sharedStyle1, "B1:B10"); // 創建一個新的工作表$objWorksheet1 = $objPHPExcel->createSheet();$objWorksheet1->setTitle('sheetb');  $objPHPExcel->setActiveSheetIndex(1);  // 創建一個圖片$gdImage = @imagecreatetruecolor(200, 20) or die('Cannot Initialize new GD image stream');$textColor = imagecolorallocate($gdImage, 255, 255, 255);imagestring($gdImage, 1, 5, 5, 'Created with PHPExcel (c1gstudio.com)', $textColor); // 把創建的圖片添加到工作表$objDrawing = new PHPExcel_Worksheet_MemoryDrawing();$objDrawing->setName('Sample image');$objDrawing->setDescription('Sample image');$objDrawing->setImageResource($gdImage);$objDrawing->setRenderingFunction(PHPExcel_Worksheet_MemoryDrawing::RENDERING_JPEG);$objDrawing->setMimeType(PHPExcel_Worksheet_MemoryDrawing::MIMETYPE_DEFAULT);$objDrawing->setHeight(36);$objDrawing->setWorksheet($objActSheet); $objPHPExcel->setActiveSheetIndex(0); // 保存$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');$objWriter->save('testexcel'.time().'.xls');新聞熱點
疑難解答
圖片精選