PHP

php로 엑셀파일을 만들자 ^^

은둔한량 2013. 3. 8. 11:36
반응형

엑셀 class는 사이트에서 다운로드   http://phpexcel.codeplex.com/

예제

include $_SERVER['DOCUMENT_ROOT'] . "/PHPExcel/PHPExcel.php";
include $_SERVER['DOCUMENT_ROOT'] . "/PHPExcel/PHPExcel/IOFactory.php";

// Create new PHPExcel object
$objPHPExcel = new PHPExcel();

$objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(20); // 숫자는 넓이
$objPHPExcel->getActiveSheet()->getColumnDimension('B')->setWidth(10);
$objPHPExcel->getActiveSheet()->getColumnDimension('C')->setWidth(7);
$objPHPExcel->getActiveSheet()->getColumnDimension('D')->setWidth(10);
$objPHPExcel->getActiveSheet()->getColumnDimension('E')->setWidth(15);
$objPHPExcel->getActiveSheet()->getColumnDimension('F')->setWidth(15);
$objPHPExcel->getActiveSheet()->getColumnDimension('G')->setWidth(25);
$objPHPExcel->getActiveSheet()->getColumnDimension('H')->setWidth(7);

$objPHPExcel->setActiveSheetIndex(0)
   ->setCellValue("A1", "Evaluation Code")
   ->setCellValue("B1", "Year")
   ->setCellValue("C1", "Quarter")
   ->setCellValue("D1", "인력코드")
   ->setCellValue("E1", "Project Number")
   ->setCellValue("F1", "Title")
   ->setCellValue("G1", "Name")
   ->setCellValue("H1", "Role");


$i = 2;
foreach($masterDataTemp as $key => $value) {

 $objPHPExcel->setActiveSheetIndex(0)
    ->setCellValue("A$i", $value['member_code'].' '.$value['projectnumber'])
    ->setCellValue("B$i", $value['year'])
    ->setCellValue("C$i", $value['quarter'])
    ->setCellValue("D$i", $value['member_code'])
    ->setCellValue("E$i", $value['projectnumber'])
    ->setCellValue("F$i", $value['title'])
    ->setCellValue("G$i", ucwords(strtolower($value['name'])))
    ->setCellValue("H$i", $value['role']);
    $i++;
}


$objPHPExcel->getActiveSheet()->setTitle("평가결과 (".date("Ymd").')');

// Set active sheet index to the first sheet, so Excel opens this as the first sheet
$objPHPExcel->setActiveSheetIndex(0);

// Redirect output to a client’s web browser (Excel5)
header('Content-Type: application/vnd.ms-excel');
header('Content-Disposition: attachment;filename="Evaluation_Result_' . date("YmdHis") . '.xls"'); //다운로드 파일명
header('Cache-Control: max-age=0');

$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
$objWriter->save('php://output'); // 직접 다운로드

 

  1. <?
  2. require_once("Classes/PHPExcel.php");
  3.  
  4. $objPHPExcel = new PHPExcel();
  5.  
  6. //기본 속성
  7. $objPHPExcel->getDefaultStyle()->getFont()->setName(iconv("EUC-KR","UTF-8",'맑은 고딕'))->setSize(10);
  8.  
  9. //값 입력
  10. $objPHPExcel->getActiveSheet()->setCellValue('A1', 'String')
  11.                               ->setCellValue('B1', 'Simple')
  12.                               ->setCellValue('C1', iconv("EUC-KR","UTF-8",'테스트 한글'));
  13.  
  14. //셀 속성
  15. $objPHPExcel->getActiveSheet()->getStyle('A1')->getFont()->setSize(14)->setBold(true);
  16.  
  17. //시트명
  18. $objPHPExcel->getActiveSheet()->setTitle("TEST");
  19.  
  20. $objPHPExcel->setActiveSheetIndex(0);
  21.  
  22. $filename = "샘플엑셀";
  23.  
  24. header('Content-Type: application/vnd.ms-excel');
  25. header('Content-Disposition: attackment;filename="'.$filename.'.xls"');
  26. header('Cashe-Control: max-age=0');
  27.  
  28. $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'EXCEL5');
  29. $objWriter->save('php://output');
  30.  
  31. exit(1);
  32. ?>

 

 

반응형