PHPExcel 한글깨짐

PHPExcel 한글깨짐

QA

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);
?>
 

 

/// 결과 깨짐 표시 ///

3077248733_1544423532.6355.png

 

 

이 질문에 댓글 쓰기 :

답변 1

header("Content-Type:text/html;charset=utf-8");

setlocale(LC_CTYPE, 'ko_KR.eucKR'); // CSV 한글 깨짐 문제

 

이두개가 다르네요?

 

밑에거 하나를 주석 처리해보세요

저렇게 바꿔도 변화는 없었는데.. 원인은 찾았습니다.
파일이 Excel 97 - 2003 통합문서 xls 였네요...

다른이름으로 저장해서  Excel 통합문서(.xlsx)로 변환해서 올리니 잘되네요
답변 달아주셔서 감사합니다 :)

답변을 작성하시기 전에 로그인 해주세요.
전체 224
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT