CI 묻고 답하기

제목 mb_detect_encoding 함수 관련 문의
글쓴이 구웅금해 작성시각 2016/03/14 11:49:53
댓글 : 3 추천 : 0 스크랩 : 0 조회수 : 13962   RSS

echo mb_detect_encodin($this->input->post('name'));

 

이런식으로 찍어보면

어쩔때는 ASCII,

어쩔때는 false ,

어쩔때는 utf-8 

 

넘어오는 문자열 인코딩을 확인해야되는데 너무 부정확해요.

똑같은 소스인데 어쩔때는 ASCII, false, utf-8 이렇게 넘어오는데

왜 그런거죠??;

브라우저 마다 넘어오는 문자열 charset 이 다른건가요?

 다음글 CI로 안드로이드 서버 구축 가능한가요?? (7)
 이전글 Disallowed Key Characters 오류 질... (1)

댓글

구웅금해 / 2016/03/14 11:52:56 / 추천 0

폼 통해서 POST 로 넘겨주는데

accept-charset="euc-kr" onsubmit="document.charset=euc-kr" 설정했구요

header 에도 euc-kr 설정했으며, 서버에도 default-charset 이 euc-kr 인데

왜 ASCII 이나 false 나 utf-8 이 넘어갈까요

 

그래서 가끔 한글깨짐 현상이 발생하거든요

도라에몽 / 2016/03/14 13:17:15 / 추천 0
// UTF-8 로 변환하기
function ConvertToUTF8($text)
{
	return iconv(mb_detect_encoding($text, mb_detect_order(), false), "UTF-8//IGNORE", $text);
}

뭐로 올지 모르면 무조건 utf-8로 변경해서 쓰는 방법도 있어요 ^^;

아.. euc-kr로 변경 하셔야 되는군요. ㅎㅎ.. 

구웅금해 / 2016/03/14 13:29:27 / 추천 0

이렇게하면 NULL 이 찍힙니다.

왜냐면 저 함수에서 FALSE 가 찍힐때는 NULL 이 오죠