PHPExcel 한글깨짐
본문
PHPExcel.php를 사용해서
엑셀파일 업로드한 내용을 배열으로 가져오려고 했는데 한글부분이 깨지네요
어떤부분을 추가해야 깨지지 않을까요?
/////////////////////////////////////// 소스 부분 /////////////////////////////////////////////
nclude_once('./_common.php');
require_once ('plugin/Classes/PHPExcel.php');
require_once ('plugin/Classes/PHPExcel/IOFactory.php');
header("Content-Type:text/html;charset=utf-8");
// 저장될 디렉토리
$upfile_dir = "../../data/member/";
//CSV데이타 추출시 한글깨짐방지
setlocale(LC_CTYPE, 'ko_KR.eucKR'); // CSV 한글 깨짐 문제
//장시간 데이터 처리될경우
set_time_limit(0);
$upfile_tmp = $_FILES['excelFile']['tmp_name'];
$uploadfile = $upfile_dir.$_FILES['excelFile']['name'];
//한글 깨짐 방지
if (move_uploaded_file($upfile_tmp,"{$uploadfile}")) {
} else {
echo ("<script>window.alert('디렉토리에 복사실패'); history.go(-1) </script>");
exit;
}
$filename = $uploadfile; // 읽어들일 엑셀 파일의 경로와 파일명을 지정한다.
try {
// 업로드한 PHP 파일을 읽어온다.
$objPHPExcel = PHPExcel_IOFactory::load($filename);
$sheetsCount = $objPHPExcel -> getSheetCount();
// 시트Sheet별로 읽기
for($i = 0; $i < $sheetsCount; $i++) {
$objPHPExcel -> setActiveSheetIndex($i);
$sheet = $objPHPExcel -> getActiveSheet();
$highestRow = $sheet -> getHighestRow(); // 마지막 행
$highestColumn = $sheet -> getHighestColumn(); // 마지막 컬럼
// 한줄읽기
for($row = 2; $row <= $highestRow; $row++) {
// $rowData가 한줄의 데이터를 셀별로 배열처리 된다.
$rowData = $sheet -> rangeToArray("A" . $row . ":" . $highestColumn . $row, NULL, TRUE, FALSE);
// $rowData에 들어가는 값은 계속 초기화 되기때문에 값을 담을 새로운 배열을 선안하고 담는다.
$allData[$row] = $rowData[0];
}
}
} catch(exception $e) {
echo $e;
}
echo "<pre>";
print_r($allData);
echo "</pre>";
//if ($msg)
// alert($msg);
//goto_url('./member_list.php?'.$qstr);
?>
/// 결과 깨짐 표시 ///
답변 1
header("Content-Type:text/html;charset=utf-8");
setlocale(LC_CTYPE, 'ko_KR.eucKR'); // CSV 한글 깨짐 문제
이두개가 다르네요?
밑에거 하나를 주석 처리해보세요