• 쇼핑몰
  • 커뮤니티
  • 북마크

PHP


[PHP] [PHP] PHPExcel을 활용한 Excel 2007 형식으로 다운로드

하나를하더라도최선을
2021.08.08 09:03 121 0
  • - 첨부파일 : PHPExcel-1.8.zip (5.0M) - 다운로드

본문




아래 링크를 클릭하여 "GitHub"에서 "PHPExcel last version"을 다운로드해 줍니다.

https://github.com/PHPOffice/PHPExcel

다운받은 파일을 압축을 풀고 압축푼 폴더의 "Classes" 폴더를 복사하여 php 원하는 폴더에 복사합니다.

다음으로 index.php 파일을 만들고 원하는 코딩을 하는데 반드시 아래 내용이 들어가야 합니다.

/** Include PHPExcel */ require_once 'Classes/PHPExcel.php'; // Create new PHPExcel object $objPHPExcel = new PHPExcel(); // Set document properties $objPHPExcel->getProperties()->setCreator("../../../") ->setLastModifiedBy("../../../") ->setTitle("../../../") ->setSubject("../../../") ->setDescription("../../../") ->setKeywords("../../../") ->setCategory("../../../");

해당 테이블의 데이터를 전체 다운받는 코드입니다.

$DB_TBLName = isset($tb_nm) ? $tb_nm : "pt_product"; //MySQL Table Name $filename = $DB_TBLName.".xlsx"; //File Name $col = "*"; $sql = "Select $col from $DB_TBLName"; $result = @mysql_query($sql,$con) or die("Couldn't execute query:<br>" . mysql_error(). "<br>" . mysql_errno()); $excelnm = iconv('UTF-8','EUC-KR',$filename); $row_array = array(); $data_array = array(); for ($i = 0; $i < mysql_num_fields($result); $i++) { $row_array[$i] = mysql_field_name($result,$i); } array_push($data_array, $row_array); while($row = mysql_fetch_row($result)) { $row_array = array(); for($j=0; $j<mysql_num_fields($result);$j++) { $col = mysql_field_name($result,$j); if(!isset($row[$j])) $row_array[$j] = "NULL"; elseif ($row[$j] != "") if($col!='pd_img') $row_array[$j] = $row[$j]; else $row_array[$j] = "Bitmap Images"; else $row_array[$j] = ""; } array_push($data_array, $row_array); } $objPHPExcel->getActiveSheet()->fromArray($data_array,NULL,'A1'); header('Content-Type: application/octet-stream'); header('Content-Disposition: attachment; filename="'.$excelnm.'"'); header('Cache-Control: max-age=0'); $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); $objWriter->save('php://output');

문서 속성 설정된 결과입니다.

07b35b8d3535727d6becd0739bfd82f6_1628380985_4936.png

첨부파일은 글 작성 시점에서 라스트 버전입니다.

 



댓글목록 0

등록된 댓글이 없습니다.