| 제목 | mb_detect_encoding 함수 관련 문의 | ||
|---|---|---|---|
| 글쓴이 | 구웅금해 | 작성시각 | 2016/03/14 11:49:53 | 
| 
                         | 
                |||
| 
                         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
                             
                             | 
                    
| 
                             
                                도라에몽
                                /
                                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 이 오죠  | 
                    
폼 통해서 POST 로 넘겨주는데
accept-charset="euc-kr" onsubmit="document.charset=euc-kr" 설정했구요
header 에도 euc-kr 설정했으며, 서버에도 default-charset 이 euc-kr 인데
왜 ASCII 이나 false 나 utf-8 이 넘어갈까요
그래서 가끔 한글깨짐 현상이 발생하거든요