PHP에서 사용 가능한 Excel 관련 라이브러리가 많이 있으나 그나마 가장 많이 사용되는
PHPExcel을 사용하여 Excel 파일에서 데이터를 가져오는 기능 구현을 하겠다.
환경
OS : Ubuntu 16.04
PHP : PHP7.0
순서
1. PHPExcel 라이브러리 다운로드
2. Codeigniter 삽입
3. 파일 폼 전송 처리
1. PHPExcel 라이브러리 다운로드 ( https://github.com/PHPOffice/PHPExcel )
- 위 사이트에 접속 후에 ZIP 파일로 다운로드 받는다.
- Git 을 사용하여 Clone 받아도 무방하다.
2. Codeigniter 라이브러리 삽입
- 우리는 Classes 안에 있는 PHPExcel 폴더와 PHPExcel.php 파일이 필요하다.
- 해당 파일들을 codeigniter 프로젝트 /application/libraries 에 복사한다.
/프로젝트명/application/libraries/PHPExcel
/프로젝트명/application/libraries/PHPExcel.php
3. 파일 폼 전송 처리
- 서버에 업로드하여 사용해도 괜찮지만 굳이 서버에 저장할 필요가 없다면 해당 예제를 따라한다
- 업로드 하여 사용할 경우는 upload 후에 파일 경로를 load 부분에 다시 셋팅해주자
$this->load->library("PHPExcel");
$objPHPExcel = new PHPExcel();
$objPHPExcel = PHPExcel_IOFactory::load($_FILES['excel']['tmp_name']);
$sheetsCount = $objPHPExcel->getSheetCount();
for($i = 0; $i < $sheetsCount; $i++)
{
$objPHPExcel->setActiveSheetIndex($i);
$sheet = $objPHPExcel->getActiveSheet();
$highestRow = $sheet->getHighestRow();
$highestColumn = $sheet->getHighestColumn();
// 한줄읽기 */
for ($row = 1; $row <= $highestRow; $row++)
{
// $rowData에 한줄의 데이터를 배열처리 된다.
$rowData = $sheet->rangeToArray('A' . $row . ':' . $highestColumn . $row, NULL, TRUE, FALSE);
}
}
'Web > PHP' 카테고리의 다른 글
[ Codeigniter ] 에러 출력하기 (0) | 2019.11.18 |
---|---|
[ Laravel ] 블레이드 템플릿 문법 (0) | 2019.10.18 |
[ Laravel ] permission denied 문제 (0) | 2019.09.03 |
[ Laravel ] 기본 config 항목 살펴보기 (0) | 2019.07.31 |
laravel view 캐쉬 비우기 (0) | 2019.04.11 |
댓글