php 문자 인코딩 iconv 사용시 질문입니다.

php 문자 인코딩 iconv 사용시 질문입니다.

QA

php 문자 인코딩 iconv 사용시 질문입니다.

본문

예를들어


$_str = "외부 XML이나 DB 또는 엑셀에서 읽어온 글자";
$_str_enc = iconv("EUC-KR", "UTF-8",$_str);

했을때

$_str 가 EUC-KR 이 아닐경우

이때도 이상없이 UTF-8 로 인코딩 되나요?

 

아니면 기본 인코딩정보가 틀려서 오류나 글자가 깨지거나 그러나요??

 

$_str 의 현재 인코딩상태는 확인할려면 어떻게 해야할까요?

이 질문에 댓글 쓰기 :

답변 1

 

만약 $_str 이 EUC-KR 이 아닐경우 iconv() 을 사용하면 오류가 나거나 글자가 깨질 수 있습니다. 따라서, $_str 의 현재 인코딩 상태를 확인하고 iconv() 함수를 사용하기 전에 반드시 인코딩 상태를 확인하는 것이 좋습니다. mb_detect_encoding() 함수를 사용하여 $_str 의 현재 인코딩 상태를 확인할 수 있습니다. 예를 들어,


$_str_encoding = mb_detect_encoding($_str);
if($_str_encoding == "EUC-KR") {
$_str_enc = iconv("EUC-KR", "UTF-8",$_str);
} else {
$_str_enc = iconv($_str_encoding, "UTF-8",$_str);
}

위와 같이 하면 됩니다.

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

회원로그인

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