반응형
php 엑셀 다루기
엑셀 라이브러리 다운
https://github.com/PHPOffice/PHPExcel
라이브러리 적용
require_once("PHPExcel-1.8\Classes\PHPExcel.php");
require_once("PHPExcel-1.8\Classes\PHPExcel\IOFactory.php");
Excel 객체 생성
$objPHPExcel = new PHPExcel();
엑셀 시트 생성 & 삭제
$objPHPExcel->createSheet();
$objPHPExcel->removeSheetByIndex(0);
시트 선택 후 이름 지정
$objPHPExcel->setActiveSheetIndex(0);
// 데이터를 입력할 시트 지정(필수)
$objPHPExcel->getActiveSheet()->setTitle( 'sheet_name1' );
엑셀 값 삽입
$objPHPExcel->getActiveSheet()->setCellValue( 'A1' , iconv("EUC-KR","UTF-8",$menu[$i] ) );
엑셀 저장
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
$objWriter->save('php://output');
셀 병합 & 가운데 정렬 & 컬럼 너비 조절 & 자동 개행
$objPHPExcel->getActiveSheet()->mergeCells('A1:B3');
$objPHPExcel->getActiveSheet()->getStyle('A1:A9')->getAlignment()->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER);
$objPHPExcel->getActiveSheet()->getColumnDimension('A')->setWidth(20);
$objPHPExcel->getActiveSheet()->getStyle( 'A1' )->getAlignment()->setWrapText(true);
배경색 & 폰트 양식 & 테두리 정의
$TD_COLOR = array( 'fill' => array( 'type' => PHPExcel_Style_Fill::FILL_SOLID, 'color' => array('rgb'=>'ffff00'), ), 'font' => array( 'bold' => 'true', 'size' => '12', 'color' => array('rgb'=>'000000') ), 'borders' => array( 'outline' => array( 'style' => PHPExcel_Style_Border::BORDER_THICK, 'color' => array('grab'=>'000000') ) ), ); $objPHPExcel->getActiveSheet()->getStyle('A1:A9')-> applyFromArray($TD_COLOR);
※ 예제
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | <? require_once("PHPExcel-1.8\Classes\PHPExcel.php"); require_once("PHPExcel-1.8\Classes\PHPExcel\IOFactory.php"); $objPHPExcel = new PHPExcel(); for($i=0; $i < count($_POST['Recv_data']); $i++) { $objPHPExcel->setActiveSheetIndex($i); $objPHPExcel->getActiveSheet()->setCellValue('A'.(String)($i+1) , iconv("EUC-KR","UTF-8", $_POST['Recv_data'][$i] ); $objPHPExcel->getActiveSheet()->setTitle( "Sheet $i" ); $objPHPExcel->createSheet(); } $objPHPExcel->removeSheetByIndex($i); header('Content-Type:application/vnd.ms-excel; charset=utf-8'); header('Content-Disposition:attachment; filename = testa.xls'); header('Content-Description:PHP4 Generated Data'); $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); $objWriter->save('php://output'); ?> | cs |
반응형
'프로그래밍 > 웹' 카테고리의 다른 글
자바스크립트 이미지 캡처하기 (0) | 2019.12.13 |
---|---|
PHP 이미지 캡처하기 (0) | 2019.12.13 |
자바스크립트로 테이블을 엑셀 파일로 추출하기 (0) | 2019.12.12 |
PHP 함수 모음 (0) | 2019.12.12 |
PHP 로그인 구현 (0) | 2019.11.29 |