phpexcel操做

PHPExcel基本操做:
定義EXCEL實體
即定義一個PHPEXCEL對象,並設置EXCEL對象內顯示內容php

// Excel開始
// 準備EXCEL的包括文件
// Error reporting
error_reporting(0);
// PHPExcel
require_once dirname(__FILE__) . 'PHPExcel.php';
// 生成新的excel對象
$objPHPExcel = new PHPExcel();
// 設置excel文檔的屬性
$objPHPExcel->getProperties()->setCreator("Sam.c")
             ->setLastModifiedBy("Sam.c Test")
             ->setTitle("Microsoft Office Excel Document")
             ->setSubject("Test")
             ->setDescription("Test")
             ->setKeywords("Test")
             ->setCategory("Test result file");
// 開始操做excel表
// 操做第一個工做表
$objPHPExcel->setActiveSheetIndex(0);
// 設置工做薄名稱
$objPHPExcel->getActiveSheet()->setTitle(iconv('gbk', 'utf-8', 'phpexcel測試'));
// 設置默認字體和大小
$objPHPExcel->getDefaultStyle()->getFont()->setName(iconv('gbk', 'utf-8', '宋體'));
$objPHPExcel->getDefaultStyle()->getFont()->setSize(10);

3、輸出文件瀏覽器

// 若是須要輸出EXCEL格式
if($m_exportType=="excel"){  
    $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
    // 從瀏覽器直接輸出$filename
    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-excel;");
    header("Content-Type:application/octet-stream");
    header("Content-Type:application/download");
    header("Content-Disposition:attachment;filename=".$filename);
    header("Content-Transfer-Encoding:binary");
    $objWriter->save("php://output");
}
// 若是須要輸出PDF格式
if($m_exportType=="pdf"){
    $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'PDF');
    $objWriter->setSheetIndex(0);
    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/pdf");
    header("Content-Type:application/octet-stream");
    header("Content-Type:application/download");
    header("Content-Disposition:attachment;filename=".$m_strOutputPdfFileName);
    header("Content-Transfer-Encoding:binary");
    $objWriter->save("php://output");
}

設置一列的寬度:app

$objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(15);

設置一行的高度post

$objPHPExcel->getActiveSheet()->getRowDimension('6')->setRowHeight(30);

合併單元格:測試

$objPHPExcel->getActiveSheet()->mergeCells('A1:P1');

加粗居中字體

$styleArray1 = array(
  'font' => array(
    'bold' => true,
    'size'=>12,
    'color'=>array(
      'argb' => '00000000',
    ),
  ),
  'alignment' => array(
    'horizontal' => PHPExcel_Style_Alignment::HORIZONTAL_CENTER,
  ),
);
// 將A1單元格設置爲加粗,居中
$objPHPExcel->getActiveSheet()->getStyle('A1')->applyFromArray($styleArray1);
 
$objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->setBold(true);

給特定單元格中寫入內容:ui

$objPHPExcel->getActiveSheet()->setCellValue('A1', 'Hello Baby');

 放連接.net

$objPHPExcel->getActiveSheet()->setCellValue('H8', iconv('gbk', 'utf-8', '燕南天'));
$objPHPExcel->getActiveSheet()->getCell('H8')->getHyperlink()->setUrl('http://www.jb51.net/');

 設邊框excel

$styleThinBlackBorderOutline = array(
    'borders' => array (
       'outline' => array (
          'style' => PHPExcel_Style_Border::BORDER_THIN,  //設置border樣式
          //'style' => PHPExcel_Style_Border::BORDER_THICK, 另外一種樣式
          'color' => array ('argb' => 'FF000000'),     //設置border顏色
      ),
   ),
);
$objPHPExcel->getActiveSheet()->getStyle( 'A4:E10')->applyFromArray($styleThinBlackBorderOutline);
 
//添加一個新的worksheet
          $objExcel->createSheet();
          $objActSheet = $objExcel->getSheet($s);
          $objActSheet->setTitle('表'.$GSheet);

 水平/垂直居中code

$objPHPExcel->getActiveSheet()->getStyle('A1')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
$objPHPExcel->getActiveSheet()->getStyle('A1')->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);

設置單元格樣式(黑色字體):

$objPHPExcel->getActiveSheet()->getStyle('H5')->getFont()->getColor()->setARGB(PHPExcel_Style_Color::COLOR_BLACK); // 黑色

設置單元格格式(背景):

$objPHPExcel->getActiveSheet()->getStyle('H5')->getFill()->getStartColor()->setARGB('00ff99cc'); // 將背景設置爲淺粉色

設置單元格格式

$objPHPExcel->getActiveSheet()->getStyle('F'.$iLineNumber)->getNumberFormat()->setFormatCode('0.000');

單元格放圖片

// 將數據中心圖片放在J1單元格內
$objDrawing = new PHPExcel_Worksheet_Drawing();
$objDrawing->setName('Logo');
$objDrawing->setDescription('Logo');
$objDrawing->setPath('test.jpg');
$objDrawing->setWidth(400);
$objDrawing->setHeight(123);
$objDrawing->setCoordinates('J1');
$objDrawing->setWorksheet($objPHPExcel->getActiveSheet());

 左對齊

$objActSheet->getStyle('E'.$row)->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_JUSTIFY);

右對齊

$activeSheet->getStyle('D1')->getAlignment()->setHorizontal(\PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);
相關文章
相關標籤/搜索