>  기사  >  백엔드 개발  >  phpexcel 클래스 라이브러리 인스턴스 지원(excel2003 excel2007)

phpexcel 클래스 라이브러리 인스턴스 지원(excel2003 excel2007)

WBOY
WBOY원래의
2016-07-25 08:56:09987검색
  1. ini_set("display_errors",1);//오류 메시지 표시 여부

  2. ini_set (' include_path', ini_get('include_path').';D:\PHP\PHPExcel 1.6.6\Tests\classes\');//이 페이지에 대한 포함 경로 설정
  3. include "classes/PHPExcel.php ";
  4. include "classes/PHPExcel/Writer/Excel5.php";
  5. //엑셀 만들기
  6. $objPHPExcel = new PHPExcel();
  7. $objWriter = new PHPExcel_Writer_Excel5($objPHPExcel);
  8. $ objWriter->save("xxx.xls");
  9. ?>

  10. <
  11. //포함 경로 설정 PHPExcel 클래스 라이브러리
  12. set_include_path('.'. PATH_SEPARATOR .
  13. 'D:ZealPHP_LIBS' . PATH_SEPARATOR .
  14. get_include_path())
  15. /**
  16. * 사용 예, ////로 시작하는 행에 대해 다양한 선택적 방법이 있습니다.
  17. * 실제 필요에 따라 해당 행의 주석을 여십시오.
  18. * Excel5를 사용하는 경우 출력 내용은 GBK로 인코딩되어야 합니다.
  19. */
  20. require_once 'PHPExcel.php';
  21. // 주석 해제
  22. ////require_once 'PHPExcel/Writer/Excel5.php' // 다른 하위 버전의 경우
  23. //
  24. /// /require_once 'PHPExcel/Writer/Excel2007.php'; // excel-2007 형식의 경우
  25. // 처리 개체 인스턴스 생성
  26. $objExcel = new PHPExcel()
  27. // 파일 형식 쓰기 객체 인스턴스 생성, 주석 해제
  28. ////$objWriter = new PHPExcel_Writer_Excel5($objExcel); // 다른 버전 형식에 사용
  29. // 또는
  30. // //$objWriter = new PHPExcel_Writer_Excel2007($objExcel); // 2007 형식의 경우
  31. //$objWriter->setOffice2003Compatibility(true)
  32. //********** *** ************************
  33. //기본 문서 속성 설정
  34. $objProps = $objExcel->getProperties() ;
  35. $objProps->setCreator("Zeal Li");
  36. $objProps->setLastModifiedBy("Zeal Li")
  37. $objProps->setTitle("Office XLS 테스트 문서") ;
  38. $objProps->setSubject("Office XLS 테스트 문서, 데모")
  39. $objProps->setDescription("PHPExcel로 생성된 테스트 문서."); setKeywords(" 사무실 엑셀 PHPExcel")
  40. $objProps->setCategory("테스트")
  41. //****************** ****** ****************
  42. //다음 콘텐츠 작업을 위해 현재 시트 인덱스를 설정합니다.
  43. //일반적으로 여러 시트를 사용할 때만 표시 호출이 필요합니다.
  44. //기본적으로 PHPExcel은 SheetIndex=0
  45. $objExcel->setActiveSheetIndex(0);
  46. $objActSheet = $objExcel ->getActiveSheet를 사용하여 자동으로 첫 번째 시트를 생성합니다. ()
  47. //현재 활성 시트의 이름 설정
  48. $objActSheet->setTitle('Test Sheet')
  49. //***** ** **********************************
  50. //셀 내용 설정
  51. //
  52. / /PHPExcel은 들어오는 콘텐츠를 기반으로 셀 콘텐츠 유형을 자동으로 결정합니다
  53. $objActSheet->setCellValue('A1', 'String content') // String content
  54. $objActSheet->setCellValue(' A2 ', 26); // 값
  55. $objActSheet->setCellValue('A3', true); // 부울 값
  56. $objActSheet->setCellValue('A4', '=SUM(A2: A2) )'); // 공식
  57. //컨텐츠 유형을 명시적으로 지정
  58. $objActSheet->setCellValueExplicit('A5', '847475847857487584',
  59. PHPExcel_Cell_DataType::TYPE_STRING);
  60. //셀 병합
  61. $objActSheet->mergeCells('B1:C22')
  62. //셀 분리
  63. $objActSheet->unmergeCells('B1:C22') ;
  64. //****************************************
  65. //셀 스타일 설정
  66. //
  67. //너비 설정
  68. $objActSheet->getColumnDimension('B')->setAutoSize(true); >getColumnDimension('A')->setWidth(30);
  69. $objStyleA5 = $objActSheet->getStyle('A5')
  70. //셀 내용 번호 형식 설정 .
  71. //
  72. //PHPExcel_Writer_Excel5를 사용하여 콘텐츠를 생성하는 경우
  73. //여기서
  74. //PHPExcel_Style_NumberFormat 클래스의 const 변수에 의해 정의된 다양한 사용자 정의 형식 지정 방법에 유의해야 합니다. 다른 유형도 정상적으로 사용할 수 있지만, setFormatCode
  75. //가 FORMAT_NUMBER인 경우 실제 효과는 형식이 "0"으로 설정되지 않는다는 것입니다.
  76. //PHPExcel_Writer_Excel5_Format 클래스 소스 코드에서 getXf($style) 메소드를 수정해야 합니다.
  77. //if ($this->_BIFF_version == 0x0500) { (근접 라인) 앞에 //코드 줄:
  78. //if($ifmt === '0') $ifmt = 1
  79. //
  80. //피하려면 형식을 PHPExcel_Style_NumberFormat::FORMAT_NUMBER로 설정하세요. 특정 큰 숫자
  81. //다음 setAutoSize 메소드를 사용하면 각 줄의 내용을
  82. //원본 내용에 따라 표시할 수 있습니다.
  83. $objStyleA5
  84. ->getNumberFormat()
  85. ->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_NUMBER);
  86. //设置字体
  87. $objFontA5 = $objStyleA5->getFont();
  88. $objFontA5->setName('Courier New');
  89. $objFontA5->setSize(10);
  90. $objFontA5->setBold(true);
  91. $objFontA5->setUnderline(PHPExcel_Style_Font::UNDERLINE_SINGLE);
  92. $objFontA5->getColor()->setARGB('FF999999');
  93. //设置对齐方式
  94. $objAlignA5 = $objStyleA5->getAlignment();
  95. $objAlignA5->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);
  96. $objAlignA5->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
  97. //设置边框
  98. $objBorderA5 = $objStyleA5->getBorders();
  99. $objBorderA5->getTop()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
  100. $objBorderA5->getTop()->getColor()->setARGB('FFFF0000'); // 색상
  101. $objBorderA5->getBottom()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
  102. $objBorderA5->getLeft()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
  103. $objBorderA5->getRight()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
  104. //设置填充颜color
  105. $objFillA5 = $objStyleA5->getFill();
  106. $objFillA5->setFillType(PHPExcel_Style_Fill::FILL_SOLID);
  107. $objFillA5->getStartColor()->setARGB('FFEEEEEE');
  108. //이용자는 머니머니를 제조하는 데 사용됩니다.
  109. $objActSheet->duplicateStyle($objStyleA5, 'B1:C22');
  110. //****************************************
  111. //添加图그림
  112. $obj드로잉 = new PHPExcel_Worksheet_드로잉();
  113. $obj드로잉->setName('ZealImg');
  114. $obj드로잉->setDescription('Zeal이 삽입한 이미지');
  115. $obj드로잉->setPath('./zeali.net.logo.gif');
  116. $obj드로잉->setHeight(36);
  117. $obj드로잉->setCoordinates('C23');
  118. $obj드로잉->setOffsetX(10);
  119. $obj드로잉->setRotation(15);
  120. $obj드로잉->getShadow()->setVisible(true);
  121. $obj드로잉->getShadow()->setDirection(36);
  122. $obj드로잉->setWorksheet($objActSheet);
  123. //添加一个 새로운 워크시트
  124. $objExcel->createSheet();
  125. $objExcel->getSheet(1)->setTitle('测试2');
  126. //保护单원格
  127. $objExcel->getSheet(1)->getProtection()->setSheet(true);
  128. $objExcel->getSheet(1)->protectCells('A1:C22', 'PHPExcel');
  129. //****************************************
  130. //출입内容
  131. //
  132. $outputFileName = "output.xls";
  133. //到文件
  134. ////$objWriter->save($outputFileName);
  135. //또는
  136. //到浏览器
  137. ////header("콘텐츠 유형: 애플리케이션/강제 다운로드");
  138. ////header("콘텐츠 유형: 애플리케이션/옥텟-스트림");
  139. ////header("콘텐츠 유형: 애플리케이션/다운로드");
  140. ////header('Content-Disposition:inline;filename="'.$outputFileName.'"');
  141. ////header("콘텐츠 전송-인코딩: 바이너리");
  142. ////header("만료: 1997년 7월 26일 월요일 05:00:00 GMT");
  143. ////header("최종 수정: " . gmdate("D, d M Y H:i:s") . " GMT");
  144. ////header("캐시 제어: 재검증 필수, 사후 확인=0, 사전 확인=0");
  145. ////header("Pragma: 캐시 없음");
  146. ////$objWriter->save('php://output');
  147. ?>

复代码


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