백엔드 개발 PHP 튜토리얼 Excel을 내보내고 하이퍼링크를 추가하는 phpExcel의 예제 코드

Excel을 내보내고 하이퍼링크를 추가하는 phpExcel의 예제 코드

Jul 25, 2016 am 08:55 AM

  1. <p><?php
  2. //写excel</p>
  3. <p>//수업 포함
  4. require_once('클래스/PHPExcel.php');
  5. require_once('클래스/PHPExcel/Writer/Excel2007.php');
  6. $objPHPExcel = new PHPExcel();</p>
  7. <p>/**
  8. * phpExcel 내보내기 엑셀
  9. * by bbs.it-home.org
  10. */</p>
  11. <p>//속성 설정 设置文件属性
  12. $objPHPExcel->getProperties()->setCreator("마르텐 Balliauw");
  13. $objPHPExcel->getProperties()->setLastModifiedBy("마틴 Balliauw");
  14. $objPHPExcel->getProperties()->setTitle(“Office 2007 XLSX 테스트 문서”);
  15. $objPHPExcel->getProperties()->setSubject(“Office 2007 XLSX 테스트 문서”);
  16. $objPHPExcel->getProperties()->setDescription(“PHP 클래스를 사용하여 생성된 Office 2007 XLSX용 테스트 문서.”);
  17. $objPHPExcel->getProperties()->setKeywords("office 2007 openxml php");
  18. $objPHPExcel->getProperties()->setCategory(“테스트 결과 파일”);</p>
  19. <p>//일부 데이터 추가 添加数据
  20. $objPHPExcel-> setActiveSheetIndex(0);
  21. $objPHPExcel->getActiveSheet()->setCellValue('A1′, 'Hello');//可以指정位置
  22. $objPHPExcel->getActiveSheet()->setCellValue('A2′, 진실);
  23. $objPHPExcel->getActiveSheet()->setCellValue('A3', false);
  24. $objPHPExcel->getActiveSheet()->setCellValue('B2', 'world!');
  25. $objPHPExcel->getActiveSheet()->setCellValue('B3', 2);
  26. $objPHPExcel->getActiveSheet()->setCellValue('C1', 'Hello');
  27. $objPHPExcel->getActiveSheet()->setCellValue('D2′, 'world!');
  28. //循环
  29. for($i = 1;$i<200;$i ) {
  30. $objPHPExcel->getActiveSheet()->setCellValue('A' . $i, $i );
  31. $objPHPExcel->getActiveSheet()->setCellValue('B' . $i, '테스트 값');
  32. }
  33. //日期格式化
  34. $objPHPExcel->getActiveSheet()->setCellValue('D1′, time());
  35. $objPHPExcel->getActiveSheet()->getStyle('D1′)->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_DATE_YYYYMMDDSLASH);</p>
  36. <p>/ /댓글 추가 添加注释
  37. $objPHPExcel->getActiveSheet()->getComment('E11′)->setAuthor('PHPExcel');
  38. $objCommentRichText = $objPHPExcel->getActiveSheet()->getComment('E11')->getText()->createTextRun('PHPExcel:');
  39. $objCommentRichText->getFont()->setBold(true);
  40. $objPHPExcel->getActiveSheet()->getComment('E11')->getText()->createTextRun("rn");
  41. $objPHPExcel->getActiveSheet()->getComment('E11′)->getText()->createTextRun('VAT를 제외한 현재 청구서의 총액.');</p>
  42. <p>//서식 있는 텍스트 문자열 추가 添加文字 可设置样式
  43. $objRichText = new PHPExcel_RichText( $objPHPExcel->getActiveSheet()->getCell('A18′) );
  44. $objRichText->createText('이 청구서는 ');
  45. $objPayable = $objRichText->createTextRun('월말 이후 30일 이내에 지급 가능');
  46. $objPayable->getFont()->setBold(true);
  47. $objPayable->getFont()->setItalic(true);
  48. $objPayable->getFont()->setColor( new PHPExcel_Style_Color( PHPExcel_Style_Color::COLOR_DARKGREEN ) );
  49. $objRichText->createText(', 인보이스에 달리 지정되지 않는 한.');</p>
  50. <p>//셀 병합 合并分离单元格
  51. $objPHPExcel-> getActiveSheet()->mergeCells('A18:E22');
  52. $objPHPExcel->getActiveSheet()->unmergeCells('A18:E22′);</p>
  53. <p>//셀 보호 保护单元格
  54. $objPHPExcel-> getActiveSheet()->getProtection()->setSheet(true);//워크시트 보호를 활성화하려면 true로 설정해야 합니다!
  55. $objPHPExcel->getActiveSheet()->protectCells('A3:E13′, 'PHPExcel');</p>
  56. <p>//셀 번호 형식 설정 数字格式化
  57. $objPHPExcel->getActiveSheet()->getStyle('E4′)->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_CURRENCY_EUR_SIMPLE);
  58. $objPHPExcel->getActiveSheet()->duplicateStyle( $objPHPExcel->getActiveSheet()->getStyle('E4′), 'E5:E13′ );</p>
  59. &lt ;p>//열 너비 설정 设置列宽degree
  60. $objPHPExcel->getActiveSheet()->getColumnDimension('B')->setAutoSize(true);
  61. $objPHPExcel->getActiveSheet()->getColumnDimension('D')->setWidth(12);</p>
  62. <p>//글꼴 설정 设置字体
  63. $ objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->setName('Candara');
  64. $objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->setSize(20);
  65. $objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->setBold(true);
  66. $objPHPExcel->getActiveSheet()->getStyle('B1')->getFont()->setUnderline(PHPExcel_Style_Font::UNDERLINE_SINGLE);
  67. $objPHPExcel->getActiveSheet()->getStyle('B1′)->getFont()->getColor()->setARGB(PHPExcel_Style_Color::COLOR_WHITE);</p>
  68. <p>//정렬 설정 设置对齐
  69. $objPHPExcel->getActiveSheet()->getStyle('D11′)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);
  70. $objPHPExcel->getActiveSheet()->getStyle('A18')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_JUSTIFY);
  71. $objPHPExcel->getActiveSheet()->getStyle('A18')->getAlignment()->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER);
  72. $objPHPExcel->getActiveSheet()->getStyle('A3′)->getAlignment()->setWrapText(true);</p>
  73. <p>//열 설정 borders 设置列边框
  74. $objPHPExcel->getActiveSheet()->getStyle('A4′)->getBorders()->getTop()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
  75. $objPHPExcel->getActiveSheet()->getStyle('A10')->getBorders()->getLeft()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
  76. $objPHPExcel->getActiveSheet()->getStyle('E10')->getBorders()->getRight()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
  77. $objPHPExcel->getActiveSheet()->getStyle('D13')->getBorders()->getLeft()->setBorderStyle(PHPExcel_Style_Border::BORDER_THICK);
  78. $objPHPExcel->getActiveSheet()->getStyle('E13′)->getBorders()->getBottom()->setBorderStyle(PHPExcel_Style_Border::BORDER_THICK);</p>
  79. <p>//테두리 색상 설정 设置边框颜color
  80. $objPHPExcel->getActiveSheet()->getStyle('D13′)->getBorders()->getLeft()->getColor( )->setARGB('FF993300');
  81. $objPHPExcel->getActiveSheet()->getStyle('D13')->getBorders()->getTop()->getColor()->setARGB('FF993300');
  82. $objPHPExcel->getActiveSheet()->getStyle('D13')->getBorders()->getBottom()->getColor()->setARGB('FF993300');
  83. $objPHPExcel->getActiveSheet()->getStyle('E13′)->getBorders()->getRight()->getColor()->setARGB('FF993300′);< /p>
  84. <p>//채우기 설정 设置填充
  85. $objPHPExcel->getActiveSheet()->getStyle('A1′)->getFill()->setFillType(PHPExcel_Style_Fill:: FILL_SOLID);
  86. $objPHPExcel->getActiveSheet()->getStyle('A1′)->getFill()->getStartColor()->setARGB('FF808080′);</p>
  87. <p>//시트에 하이퍼링크 추가 添加链接
  88. $objPHPExcel->getActiveSheet()->setCellValue('E26′, 'www.phpexcel.net');
  89. $objPHPExcel->getActiveSheet()->getCell('E26')->getHyperlink()->setUrl('http://www.phpexcel.net');
  90. $objPHPExcel->getActiveSheet()->getCell('E26')->getHyperlink()->setTooltip('웹사이트로 이동');
  91. $objPHPExcel->getActiveSheet()->getStyle('E26′)->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_RIGHT);</p>
  92. <p>/ /워크시트에 그림 추가 添加图文
  93. $obj드로잉 = new PHPExcel_Worksheet_드로잉();
  94. $obj드로잉->setName('로고');
  95. $obj드로잉->setDescription('로고');
  96. $obj드로잉->setPath('./images/officelogo.jpg');
  97. $obj드로잉->setHeight(36);
  98. $obj드로잉->setCoordinates('B15′);
  99. $obj드로잉->setOffsetX(110);
  100. $obj드로잉->setRotation(25);
  101. $obj드로잉->getShadow()->setVisible(true);
  102. $obj드로잉->getShadow()->setDirection(45);
  103. $obj드로잉->setWorksheet($objPHPExcel->getActiveSheet());</p>
  104. <p>//행과 열 삽입 및 제거 실험
  105. $objPHPExcel-&gt ;getActiveSheet()->insertNewRowBefore(6, 10);
  106. $objPHPExcel->getActiveSheet()->removeRow(6, 10);
  107. $objPHPExcel->getActiveSheet()->insertNewColumnBefore('E', 5);
  108. $objPHPExcel->getActiveSheet()->removeColumn('E', 5);</p>
  109. <p>//조건부 서식 추가
  110. $objConditional1 = new PHPExcel_Style_Conditional() ;
  111. $objConditional1->setConditionType(PHPExcel_Style_Conditional::CONDITION_CELLIS);
  112. $objConditional1->setOperatorType(PHPExcel_Style_Conditional::OPERATOR_LESSTHAN);
  113. $objConditional1->setCondition('0′);
  114. $objConditional1->getStyle()->getFont()->getColor()->setARGB(PHPExcel_Style_Color::COLOR_RED);
  115. $objConditional1->getStyle()->getFont()->setBold(true);</p>
  116. <p>//자동 필터 설정 自动过滤
  117. $objPHPExcel-&gt ;getActiveSheet()->setAutoFilter('A1:C9′);</p>
  118. <p>//"전화" 및 "팩스" 열 숨기기 隐藏列
  119. $objPHPExcel->getActiveSheet ()->getColumnDimension('C')->setVisible(false);
  120. $objPHPExcel->getActiveSheet()->getColumnDimension('D')->setVisible(false);</p>
  121. <p>//문서 보안 설정 设置文档안전
  122. $objPHPExcel->getSecurity()->setLockWindows(true);
  123. $objPHPExcel->getSecurity()->setLockStructure(true);
  124. $objPHPExcel->getSecurity()->setWorkbookPassword(“PHPExcel”);</p>
  125. <p>//시트 보안 설정 设置工作表안전
  126. $objPHPExcel-> getActiveSheet()->getProtection()->setPassword('PHPExcel');
  127. $objPHPExcel->getActiveSheet()->getProtection()->setSheet(true);// 다음 중 하나를 활성화하려면 이 기능을 활성화해야 합니다!
  128. $objPHPExcel->getActiveSheet()->getProtection()->setSort(true);
  129. $objPHPExcel->getActiveSheet()->getProtection()->setInsertRows(true);
  130. $objPHPExcel->getActiveSheet()->getProtection()->setFormatCells(true);</p>
  131. <p>//계산된 데이터 计算
  132. echo 'B14 값 [=COUNT (B2:B12)]: ' . $objPHPExcel->getActiveSheet()->getCell('B14')->getCalculatedValue() . "rn";</p>
  133. <p>//개요 수준 설정
  134. $objPHPExcel->getActiveSheet()->getColumnDimension('E')->setOutlineLevel(1);
  135. $objPHPExcel->getActiveSheet()->getColumnDimension('E')->setVisible(false);
  136. $objPHPExcel->getActiveSheet()->getColumnDimension('E')->setCollapsed(true);</p>
  137. <p>//창 고정
  138. $objPHPExcel- >getActiveSheet()->freezePane('A2′);</p>
  139. <p>//맨 위에서 반복할 행
  140. $objPHPExcel->getActiveSheet()->getPageSetup( )->setRowsToRepeatAtTopByStartAndEnd(1, 1);</p>
  141. <p>//데이터 유효성 검사 설정 验证输入值
  142. $objValidation = $objPHPExcel->getActiveSheet()->getCell( 'B3')->getDataValidation();
  143. $objValidation->setType( PHPExcel_Cell_DataValidation::TYPE_WHOLE );
  144. $objValidation->setErrorStyle( PHPExcel_Cell_DataValidation::STYLE_STOP );
  145. $objValidation->setAllowBlank(true);
  146. $objValidation->setShowInputMessage(true);
  147. $objValidation->setShowErrorMessage(true);
  148. $objValidation->setErrorTitle('입력 오류');
  149. $objValidation->setError('숫자는 허용되지 않습니다!');
  150. $objValidation->setPromptTitle('허용된 입력');
  151. $objValidation->setPrompt('10에서 20 사이의 숫자만 허용됩니다.');
  152. $objValidation->setFormula1(10);
  153. $objValidation->setFormula2(20);
  154. $objPHPExcel->getActiveSheet()->getCell('B3′)->setDataValidation($objValidation);</p>
  155. <p>//다음에 새 워크시트를 만듭니다. 기본 시트 创建新的工작품标签
  156. $objPHPExcel->createSheet(); bbs.it-home.org
  157. $objPHPExcel->setActiveSheetIndex(1);</p>
  158. <p>//머리글과 바닥글을 설정합니다. 홀수/짝수에 대해 다른 헤더가 사용되지 않는 경우 홀수 헤더가 가정됩니다. 页眉页脚
  159. $objPHPExcel->getActiveSheet()->getHeaderFooter()->setOddHeader('&C&H이 문서를 기밀로 처리해주세요!');
  160. $objPHPExcel->getActiveSheet()->getHeaderFooter()->setOddFooter('&L&B' . $objPHPExcel->getProperties()->getTitle() . '&RPage &P of &N');&lt ;/p>
  161. <p>//페이지 방향 및 크기 설정 方向大小
  162. $objPHPExcel->getActiveSheet()->getPageSetup()->setOrientation(PHPExcel_Worksheet_PageSetup::ORIENTATION_LANDSCAPE);
  163. $objPHPExcel->getActiveSheet()->getPageSetup()->setPaperSize(PHPExcel_Worksheet_PageSetup::PAPERSIZE_A4);</p>
  164. <p>//시트 이름 바꾸기 重命name工作表标签
  165. $objPHPExcel->getActiveSheet()->setTitle('Simple');</p>
  166. <p>//활성 시트 색인을 첫 번째 시트로 설정하여 Excel에서 이를 첫 번째 시트로 엽니다. sheet
  167. $objPHPExcel->setActiveSheetIndex(0);</p>
  168. <p>//Excel 2007 파일 저장 保存
  169. $objWriter = new PHPExcel_Writer_Excel2007($objPHPExcel);
  170. $objWriter->save(str_replace('.php', '.xlsx', __FILE__));</p>
  171. <p>//Excel 5 파일 저장 保存
  172. require_once( '클래스/PHPExcel/Writer/Excel5.php');
  173. $objWriter = 새로운 PHPExcel_Writer_Excel5($objPHPExcel);
  174. $objWriter->save(str_replace('.php', '.xls', __FILE__));</p>
  175. <p>//1.6.2신규版保存
  176. require_once( '클래스/PHPExcel/IOFactory.php');
  177. $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007′);
  178. $objWriter->save(str_replace('.php', '.xls', __FILE__));</p>
  179. <p>//读excel
  180. //클래스 포함
  181. require_once('클래스/PHPExcel/Reader/Excel2007.php');
  182. $objReader = 새로운 PHPExcel_Reader_Excel2007;</p>
  183. <p>$objPHPExcel = $objReader->load(“05featuredemo.xlsx”);</p>
  184. <p> //读写csv
  185. require_once(“05featuredemo.inc.php”);
  186. require_once('클래스/PHPExcel/Writer/CSV.php');
  187. require_once('클래스/PHPExcel/Reader/CSV.php');
  188. require_once('Classes/PHPExcel/Writer/Excel2007.php');</p>
  189. <p>//CSV 형식으로 쓰기 写
  190. $objWriter = new PHPExcel_Writer_CSV($objPHPExcel);
  191. $objWriter->setDelimiter(';');
  192. $objWriter->setEnclosure(”);
  193. $objWriter->setLineEnding(“rn”);
  194. $objWriter->setSheetIndex(0);
  195. $objWriter->save(str_replace('.php', '.csv', __FILE__));</p>
  196. <p>//CSV 형식에서 읽기 读
  197. $objReader = new PHPExcel_Reader_CSV ();
  198. $objReader->setDelimiter(';');
  199. $objReader->setEnclosure(”);
  200. $objReader->setLineEnding(“rn”);
  201. $objReader->setSheetIndex(0);
  202. $objPHPExcelFromCSV = $objReader->load(str_replace('.php', '.csv', __FILE__));</p>
  203. <p>//Excel2007 형식으로 쓰기
  204. $objWriter2007 = 새로운 PHPExcel_Writer_Excel2007($objPHPExcelFromCSV);
  205. $objWriter2007->save(str_replace('.php', '.xlsx', __FILE__));</p>
  206. <p>//写html
  207. require_once(“05featuredemo. inc.php”);
  208. require_once('Classes/PHPExcel/Writer/HTML.php');</p>
  209. <p>//HTML 형식으로 쓰기
  210. $objWriter = new PHPExcel_Writer_HTML($objPHPExcel);
  211. $objWriter->setSheetIndex(0);
  212. $objWriter->save(str_replace('.php', '.htm', __FILE__));</p>
  213. <p>//写pdf
  214. require_once(“05featuredemo. inc.php”);
  215. require_once('Classes/PHPExcel/IOFactory.php');</p>
  216. <p>//PDF 형식으로 쓰기
  217. $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'PDF ');
  218. $objWriter->setSheetIndex(0);
  219. $objWriter->save(str_replace('.php', '.pdf', __FILE__));
  220. //에코 메모리 최대 사용량
  221. echo date('H:i:s') . ” 최대 메모리 사용량: ” . (memory_get_peak_usage(true) / 1024 / 1024) . ” MBrn”;</p>
复代码


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

뜨거운 기사 태그

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

11 최고의 PHP URL 쇼트너 스크립트 (무료 및 프리미엄) 11 최고의 PHP URL 쇼트너 스크립트 (무료 및 프리미엄) Mar 03, 2025 am 10:49 AM

11 최고의 PHP URL 쇼트너 스크립트 (무료 및 프리미엄)

Laravel의 플래시 세션 데이터로 작업합니다 Laravel의 플래시 세션 데이터로 작업합니다 Mar 12, 2025 pm 05:08 PM

Laravel의 플래시 세션 데이터로 작업합니다

Laravel Back End : Part 2, React가있는 React 앱 구축 Laravel Back End : Part 2, React가있는 React 앱 구축 Mar 04, 2025 am 09:33 AM

Laravel Back End : Part 2, React가있는 React 앱 구축

Laravel 테스트에서 단순화 된 HTTP 응답 조롱 Laravel 테스트에서 단순화 된 HTTP 응답 조롱 Mar 12, 2025 pm 05:09 PM

Laravel 테스트에서 단순화 된 HTTP 응답 조롱

PHP의 컬 : REST API에서 PHP Curl Extension 사용 방법 PHP의 컬 : REST API에서 PHP Curl Extension 사용 방법 Mar 14, 2025 am 11:42 AM

PHP의 컬 : REST API에서 PHP Curl Extension 사용 방법

Codecanyon에서 12 개의 최고의 PHP 채팅 스크립트 Codecanyon에서 12 개의 최고의 PHP 채팅 스크립트 Mar 13, 2025 pm 12:08 PM

Codecanyon에서 12 개의 최고의 PHP 채팅 스크립트

라 라벨에서 알림 라 라벨에서 알림 Mar 04, 2025 am 09:22 AM

라 라벨에서 알림

2025 PHP 상황 조사 발표 2025 PHP 상황 조사 발표 Mar 03, 2025 pm 04:20 PM

2025 PHP 상황 조사 발표

See all articles