티스토리 뷰

Ajax 사용시 굉장히 많이 생각하게 되는 문제가 인코딩 문제이다.
특히 한글처리 부분이 있을 때는 특히 더 느끼는 문제가 될 것이다.

하지만 Ajax는 사용해야겠고. (또는 다른 인코딩문제로 고민할지도 모르겠지만.^^)
이러한 문제에 부딪혔을 때 이 팁을 사용하면 되겠다.

실제로 필자가 학교 회원관리 프로그램을 개발할 시에 느꼈던 문제중 하나였다.
서버의 설정은 고칠 수 없는 상황이었고 해당 함수는 사용하여야 했다.

한참을 헤매다가 찾아낸 팁중의 하나이다.

텍스트 큐브에서 제공해주는 function 이 있다.
물론 iconvLib와 공개 프로그램들이 몇몇 제공되고 있지만 파일이 크다..  등등의 문제가 따라오기 마련이다.
내가 생각하기에 최적의 방법이라 생각된다 (물론 서버 고치기 전까지는 ^^)


파일을 첨부하지만 문제가 있다면 연락주시고요.^^


이러한 iconv는 (PHP 4 >= 4.0.5, PHP 5) 버전에서 제공된다.

사용방법은 간단하다.
php에서 기본으로 제공해 주는 함수인 iconv()를 그대로 사용하면 된다.

iconv("이전 인코딩설정", "설정할 인코딩 설정", 설정할 변수명)

위와 같이 사용하면 된다.

예를들어 $str 이라는 변수에 utf-8의 설정을 가진 파일이 있고 페이지 설정 자체는 euc-kr로 설정되어 있을 경우 그냥 출력을 하게 된다면 깨져 보이게 될 것이다. 이러한 것을 위해 iconv를 사용하는데,

$str = iconv("UTF-8","EUC-KR",$str);

위와 같이 설정 가능하고, $str을 찍어주면 정상적인 스트링이 출력되게 된다.

물론 인코딩 설정이 다르다면 같은 문자열이라 하여도 다르게 인식될수도 있으니 잘처리하는 것이 좋다.
물론 처리속도는 변수의 크기를 줄여놓은 상태에서 진행하는 것이 효율적이라 생각된다.

이상으로 iconv의 개략적인 설명과
iconv를 지원하지 않는 계정에서의 iconv 함수 사용법에 대하여 알아보았다.