>백엔드 개발 >PHP 튜토리얼 >phpexcel 빠른 개발 가이드 (좋음)

phpexcel 빠른 개발 가이드 (좋음)

WBOY
WBOY원래의
2016-07-25 09:04:201015검색
  1. include("./class/class.php") // 기본 헤더 파일을 포함합니다. class

  2. include("./class/phpexcel/PHPExcel.php"); // Excel의 기본 클래스 정의를 생성합니다(파일 이름의 대소문자에 주의하세요)

  3. / / 직접 엑셀 파일을 출력하려면 이 파일을 포함해야 합니다

  4. include("./class/phpexcel/PHPExcel/IOFactory.php");

  5. // 출력 내용과 형식이 포함된 phpexcel 개체

  6. $m_objPHPExcel = new PHPExcel();

  7. // 형식과 내용을 분리하기 위해 템플릿 파일의 특정 내용 출력 파일은 템플릿 파일

  8. 에서 구현됩니다.// 템플릿 파일은 $m_objPHPExcel
  9. include("./include/excel.php");

  10. // 출력 파일 유형, excel 또는 pdf

  11. $m_exportType = "excel";

  12. $m_strOutputExcelFileName = date('Y-m-j_H_i_s').".xls"; // EXCEL 파일명 출력

  13. $ m_strOutputPdfFileName = date('Y-m-j_H_i_s').".pdf"; // PDF 파일명 출력
  14. // PHPExcel_IOFactory, 엑셀 출력

  15. //require_once dirname(__FILE__) .'/Classes/PHPExcel/IOFactory.php';

  16. // EXCEL 형식으로 출력해야 하는 경우

  17. if($m_exportType= ="excel"){
  18. $objWriter = PHPExcel_IOFactory::createWriter($m_objPHPExcel, 'Excel5');

  19. // 출력 $m_strOutputExcelFileName

  20. header("Pragma: public");
  21. 브라우저 헤더에서 직접("Expires: 0");
  22. header("Cache-Control:must-revalidate, post-check=0, pre-check=0");
  23. header("Content-Type:application/force -download");
  24. header("Content-Type: application/vnd.ms-excel;");
  25. header("Content-Type:application/octet -stream");
  26. header(" Content-Type:application/download");
  27. header("Content-Disposition:attachment;filename=".$m_strOutputExcelFileName);
  28. header("Content-Transfer -Encoding:binary");
  29. $ objWriter->save("php://output");
  30. }

  31. // PDF를 출력해야 하는 경우 format

  32. if($m_exportType=="pdf" ){
  33. $objWriter = PHPExcel_IOFactory::createWriter($m_objPHPExcel, 'PDF');
  34. $objWriter->setSheetIndex(0);
  35. header("Pragma : public");

  36. header("만료: 0");
  37. header("Cache-Control:must-revalidate, post-check=0, pre-check=0");
  38. header("Content-Type:application/force-download");
  39. header("Content-Type: application/pdf");
  40. header("Content- 유형:application/octet-stream");
  41. header("Content-Type:application/download");
  42. header("Content-Disposition:attachment;filename=".$m_strOutputPdfFileName);
  43. header ("Content-Transfer-Encoding:binary");
  44. $objWriter->save("php://output")
  45. }
  46. ?>

코드 복사

2. 템플릿 파일 내용(공통 작업 첨부)

  1. global $m_objPHPExcel; // 외부 파일에 의해 정의됨

  2. < ;p>//기본 속성 설정
  3. $m_objPHPExcel->getProperties()->setCreator("Sun Star 데이터 센터")
  4. ->setLastModifiedBy("Sun Star 데이터 센터")
  5. - >setTitle("Microsoft Office Excel 문서")
  6. ->setSubject("테스트 데이터 보고서 - Sunstar 데이터 센터에서")
  7. ->setDescription("LD 테스트 데이터 보고서, Sunstar 데이터 센터에서 생성 ")
  8. ->setKeywords("sunstar ld report")
  9. ->setCategory("테스트 결과 파일");

  10. // 여러 작업 생성 Thin

  11. $sheet1 = $m_objPHPExcel->createSheet();
  12. $sheet2 = $m_objPHPExcel->createSheet();

  13. // 연산 인덱스를 사용하여 연산하세요 해당 통합 문서

  14. //현재 활성 통합 문서로 작동할 통합 문서 인덱스를 설정합니다. 예:
  15. // $m_objPHPExcel->setActiveSheetIndex(0);

  16. < ;p> ;// 첫 번째 통합 문서를 활성 통합 문서로 설정
  17. $m_objPHPExcel->setActiveSheetIndex(0);

  18. // 활성 통합 문서의 이름 설정

  19. // 중국어라면 반드시 iconv 함수를 사용해 인코딩을 변환하세요
  20. $m_objPHPExcel->getActiveSheet()->setTitle(iconv('gbk', 'utf-8', 'Test Workbook')) ;< /p>
  21. // 기본 글꼴 및 크기 설정

  22. $m_objPHPExcel->getDefaultStyle()->getFont()->setName(iconv('gbk', 'utf -8' , '宋体'));
  23. $m_objPHPExcel->getDefaultStyle()->getFont()->setSize(10);

  24. // 설정 열 너비

  25. $m_objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(15);

  26. // 높이 설정 행

  27. $ m_objPHPExcel->getActiveSheet()->getRowDimension('6')->setRowHeight(30);

  28. // 셀 병합

  29. $m_objPHPExcel->getActiveSheet ()->mergeCells('A1:P1');

  30. // 스타일 정의, 굵은 글씨, 가운데 맞춤

  31. $styleArray1 = array(
  32. '글꼴' => array(
  33. 'bold' => true,
  34. 'color'=>array(
  35. 'argb' => '00000000',
  36. ),
  37. ),

  38. 'alignment' => array(

  39. 'horizontal' => PHPExcel_Style_Alignment::HORIZONTAL_CENTER,
  40. ),
  41. );< ;/p>
  42. //셀 A1에 스타일 적용

  43. $m_objPHPExcel->getActiveSheet()->getStyle('A1')->applyFromArray($styleArray1);
  44. //셀 스타일 설정(검은색 글꼴)

  45. $m_objPHPExcel->getActiveSheet()->getStyle('H5')->getFont()->getColor() -> ;setARGB(PHPExcel_Style_Color::COLOR_BLACK); // 검정색

  46. // 셀 형식 설정(배경)

  47. $m_objPHPExcel->getActiveSheet()->getStyle(' H5')->getFill()->getStartColor()->setARGB('00ff99cc'); // 배경을 연분홍색으로 설정
  48. // 셀 형식 설정 (숫자 형식)

  49. $m_objPHPExcel->getActiveSheet()->getStyle('F1')->getNumberFormat()->setFormatCode('0.000');

  50. < ; p>// 특정 셀에 콘텐츠 쓰기
  51. $m_objPHPExcel->getActiveSheet()->setCellValue('A1', 'Hello Baby');

  52. $m_objPHPExcel->getActiveSheet()->getStyle('H5')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
  53. //셀에 그림을 넣고 셀 J1에 데이터 그림을 넣습니다

  54. $obj드로잉 = new PHPExcel_Worksheet_드로잉();
  55. $obj드로잉->setName(' Logo');
  56. $obj드로잉->setDescription('Logo');
  57. $obj드로잉->setPath("../logo.jpg"); // 이미지 경로는 상대 경로만 가능합니다.
  58. $obj드로잉-> ;setWidth(400); // 이미지 너비
  59. $obj드로잉->setHeight(123); // 이미지 높이
  60. $obj드로잉->setCoordinates('J1');// 셀
  61. $obj드로잉 ->setWorksheet($m_objPHPExcel->getActiveSheet());

  62. // 셀 A5의 내용을 설정하고 하이퍼링크를 추가합니다

  63. $m_objPHPExcel ->getActiveSheet() ->setCellValue('A5', iconv('gbk', 'utf-8', 'Hyperlink jbxue.com'));
  64. $m_objPHPExcel->getActiveSheet()-> ;getCell('A5') ->getHyperlink()->setUrl('http://bbs.it-home.org/');
  65. ?>

코드 복사

3. 서버측에서 정적 파일을 생성합니다. 직접 생성과 비교했을 때 두 방법의 주요 차이점은 생성 형식입니다. 다음은 위의 예를 기반으로 수정된 버전입니다.

  1. // 클래스의 기본 헤더 파일을 포함합니다
  2. include("./class / class.php");

  3. // Excel의 기본 클래스 정의를 생성합니다(파일 이름의 대소문자에 주의하세요)

  4. include("./class/phpexcel/PHPExcel .php" );
  5. // Excel5 형식으로 작성된 파일이 포함되어 있습니다. Excel2007 파일을 생성해야 하는 경우 해당 Writer를 포함하면 됩니다
  6. include("./class/phpexcel/PHPExcel/Writer/Excel5.php" );
  7. // PDF 형식 파일 작성 포함
  8. include("./class/phpexcel/PHPExcel/Writer/PDF.php");

  9. // phpexcel 생성 객체, 이 객체에는 출력 내용과 형식이 포함되어 있습니다.

  10. $m_objPHPExcel = new PHPExcel();

  11. // 템플릿 파일, 형식과 내용을 분리하기 위해 특정 출력 파일의 내용은 템플릿에 구현됩니다. 파일

  12. // 템플릿 파일은 $m_objPHPExcel
  13. include("./include/excel.php");

  14. 객체를 작동합니다.

    // 출력 파일 유형, excel 또는 pdf

  15. $m_exportType = "pdf";

  16. $m_strOutputExcelFileName = date('Y-m-j_H_i_s')." .xls"; // EXCEL 파일명 출력

  17. $m_strOutputPdfFileName = date('Y-m-j_H_i_s').".pdf"; // PDF 파일명 출력

  18. // 출력 파일 저장 경로는 쓰기 가능한 경로여야 합니다

  19. $m_strOutputPath = "./output/";

  20. // EXCEL 형식으로 출력해야 하는 경우

  21. if($m_exportType =="excel"){
  22. $objWriter = new PHPExcel_Writer_Excel5($m_objPHPExcel);
  23. $objWriter->save($m_strOutputPath.$m_strOutputExcelFileName)
  24. }

  25. < ;p>// PDF 형식으로 출력해야 하는 경우
  26. if($m_exportType=="pdf"){
  27. $objWriter = new PHPExcel_Writer_PDF($m_objPHPExcel);
  28. $objWriter->save($ m_strOutputPath.$m_strOutputPdfFileName);
  29. }
  30. ?> ;

코드 복사


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.