iconv
iconv (문자 인코딩 변환)
문자열을 한 문자 집합에서 다른 문자 집합으로 변환해 주는 확장이에요. 예를 들어 로컬 인코딩으로 된 문자열을 유니코드(Unicode)로 바꾸거나 그 반대로 바꿀 때 사용합니다.
본문
이 모듈은 iconv 문자 집합 변환 기능에 대한 인터페이스를 제공해요. 이 모듈로 로컬 문자 집합으로 표현된 문자열을 다른 문자 집합(유니코드 문자 집합일 수도 있음)으로 표현된 문자열로 바꿀 수 있습니다. 지원되는 문자 집합은 시스템의 iconv 구현에 따라 달라져요.
참고로 일부 시스템에서는 iconv 함수가 기대한 대로 동작하지 않을 수 있어요. 그런 경우에는 GNU libiconv 라이브러리를 설치하는 것이 좋습니다. 대부분 더 일관된 결과를 얻을 수 있어요.
이 확장은 다국어 스크립트를 작성하는 데 도움이 되는 여러 유틸리티 함수도 함께 제공합니다.
iconv 함수
| 함수 | 설명 |
|---|---|
iconv |
문자열을 한 문자 인코딩에서 다른 인코딩으로 변환 |
iconv_get_encoding |
iconv 확장의 내부 설정 변수 가져오기 |
iconv_mime_decode |
MIME 헤더 필드 디코드 |
iconv_mime_decode_headers |
여러 MIME 헤더 필드를 한 번에 디코드 |
iconv_mime_encode |
MIME 헤더 필드 구성 |
iconv_set_encoding |
문자 인코딩 변환의 현재 설정 지정 |
iconv_strlen |
문자열의 문자 수 반환 |
iconv_strpos |
haystack 안에서 needle이 처음 나타나는 위치 찾기 |
iconv_strrpos |
haystack 안에서 needle이 마지막으로 나타나는 위치 찾기 |
iconv_substr |
문자열의 일부 잘라내기 |
ob_iconv_handler |
출력 버퍼 핸들러로 문자 인코딩 변환 |
문자열 함수(iconv_strlen, iconv_substr 등)는 멀티바이트·유니코드 문자열에서 바이트가 아니라 실제 문자 단위로 동작한다는 점이 핵심이에요. 그래서 한글 등 멀티바이트 문자열을 다룰 때 잘못된 위치에서 잘리는 문제를 피할 수 있어요.