파일 업로드에 이어,
데이터를 엑셀로 만들어서 서버에 업로드 하는 방법에 대해서 정리해볼게요.
1. PHPExcel 라이브러리 다운로드
http://www.codeplex.com/PHPExcel
CodePlex Archive
An archive of the CodePlex open source hosting site
archive.codeplex.com
요기에 들어가서
★다운로드 받은 파일을 압축 풀어서 서버에 저장
압축폴더 안에 sourceCode.zip이 또 있는데 그걸 압축 풀어서 trunk 안에 있는 Class 파일을 서버에 넣어주어야한다!
(중요중요)
안그러면 경로가 너무 복잡하고, 용량이 커서, 필요한 파일만 쓰자!!
2. excel.php에 엑셀 만들기 코드
excel.php 를 하나 만들어서
require_once ($_SERVER ['DOCUMENT_ROOT']."/PHPExcel/Classes/PHPExcel.php");
서버경로로 require 시켜주고,
$objPHPExcel = new PHPExcel();
$objReader = PHPExcel_IOFactory::createReaderForFile($file);
$objPHPExcel = $objReader->load($file);
$objPHPExcel->getActiveSheet()->setTitle("sheet1");// 시트이름
$objPHPExcel->setActiveSheetIndex(0); // 첫번째 시트로 지정
//엑셀에 데이터 저장
$objPHPExcel->setActiveSheetIndex(0)->setCellValue("A2","하나")
->setCellValue("B2","둘")
->setCellValue("C2","셋")
->setCellValue("D2","넷")
->setCellValue("E2","다섯");
header("Content-Type:text/html;charset=utf-8"); // 한글깨짐 방지
header('Content-Type: application/vnd.ms-excel');
header("Content-Disposition: attachment; filename="."label_data.xls"); //다운로드할 파일명(test.xls)
header('Cache-Control: max-age=0');
$objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5');
//$objWriter->save('php://output');
$objWriter->save($_SERVER['DOCUMENT_ROOT'] . "/lblExcel/test.xls"); // 새로 저장할 엑셀의 서버 경로
exit;
요로케 코딩해준다.
셀 하나당 데이터 저장해주는 거는
더보기
$objPHPExcel->setActiveSheetIndex(0)->setCellValue("A2","하나")
A2는 셀 위치를 뜻하고, 여기서 setValue 해주면 되는거고, 나머지 코드들은 그대로 갖다쓰면 됨!
3. 업로드 확인
그러고 해당 excel.php 파일로 로컬로 들어가서 새로고침 누르면,
엑셀 파일이 다운로드 되고,
서버 경로에 엑셀 파일이 저장되어있는 것을 확인할 수 있음!
'PHP' 카테고리의 다른 글
[PHP] 트랜잭션 처리 (0) | 2021.02.18 |
---|---|
PHP 엑셀 서버 업로드 - 배열 엑셀 저장 (0) | 2021.02.15 |
[PHP] 파일 업로드 / 깔끔한 파일 업로드 CSS (0) | 2021.02.10 |
PHP 자주 사용되는 서버 정보 변수 (0) | 2021.02.10 |
[PHP] 세션과 쿠키 / array에 key, value 값 추가하기 (0) | 2021.02.09 |
댓글