엑셀 파싱 (PHPExcel.php)


PHPExcel 다운로드 후 require_once로 추가 한 후 작업


<?php

require_once $_SERVER['DOCUMENT_ROOT'].'/database/preset.php';

//PHPExcel, IOFactory Import

require_once $_SERVER['DOCUMENT_ROOT'].'/board/Excel/Classes/PHPExcel.php';

require_once $_SERVER['DOCUMENT_ROOT'].'/board/Excel/Classes/PHPExcel/IOFactory.php';

?>


<?php

$objPHPExcel = new PHPExcel();

$filename = $_SERVER['DOCUMENT_ROOT'].'/data/excel/'.$filename;

try{

//업로드 된 엑셀 형식에 맞는 Reader객체를 만든다.

$objReader = PHPExcel_IOFactory::createReaderForFile($filename);

//읽기전용으로 설정

$objReader->setReadDataOnly(true);

//엑셀파일을 읽는다.

$objExcel = $objReader->load($filename);

//첫번째 시트를 선택

$objExcel->setActiveSheetIndex(0);

$objWorksheet = $objExcel->getActiveSheet();

echo "<table>";

//$rowIterator = $objWorksheet->getRowIterator();

//여기 주석은 전체 출력을 해주는 부분!! (참고)

//foreach($rowIterator as $row){ //모든 행에 대해서

//echo "<tr>";

//$cellIterator = $row->getCellIterator();

//$cellIterator->setIterateOnlyExistingCells(false);

//foreach($cellIterator as $cell){ //해당 열의 모든 셀에 대해서

//echo "<td>",iconv("UTF-8", "EUC-KR", $cell->getValue()), "</td>";

//}

//echo "</tr>";

//}

$maxRow = $objWorksheet->getHighestRow();

for($i = 2; $i <= $maxRow; $i++){ //두번째 행부터 읽는다.

echo "<tr>";

$dept = $objWorksheet->getCell('B' . $i)->getValue(); // 1번째 열

$name = $objWorksheet->getCell('C' . $i)->getValue(); // 2번째 열

$grade = $objWorksheet->getCell('D' . $i)->getValue(); // 3번째 열

$request = $objWorksheet->getCell('E' . $i)->getValue(); // 4번째 열

$content = $objWorksheet->getCell('F' . $i)->getValue(); // 5번째 열

$state = $objWorksheet->getCell('G' . $i)->getValue(); // 6번째 열

$succ_date = $objWorksheet->getCell('I' . $i)->getValue(); // 7번째 열

echo "<td>".$dept."</td>";

echo "<td>".$name."</td>";

echo "<td>".$grade."</td>";

echo "<td>".$request."</td>";

echo "<td>".$content."</td>";

echo "<td>".$state."</td>";

echo "<td>".$succ_date."</td>";

echo "</tr>";

$q = "INSERT INTO $bbs (dept, name, grade, request, content, state, succ_date) values('$dept', '$name', '$grade', '$request', '$content', '$state', '$succ_date')";

$result = $mysqli->query($q);

}

echo "</table>";


}catch(exception $e){

echo "엑셀파일을 읽는 도중 오류가 발생하였습니다.";

}

​?>



'Server - Linux > APM' 카테고리의 다른 글

[MySql] INSERT + UPDATE  (0) 2016.10.27
[MySql] 예약어  (0) 2016.10.24
[MySql] PHP MYSQLI_ASSOC / MYSQLI_NUM 차이점  (0) 2016.10.19
[MySql] 테이블 컬럼(시간) 표시 방법  (0) 2016.10.04
[APM] 설치 및 설정  (0) 2016.09.12

+ Recent posts