728x90
300x250

[PHP] function - UTF8 (한글 완벽 지원 함수 구현)

 

기존에 php의 iconv 함수를 사용하면 완벽한 한글 지원 함수를 구현하기에는 여러가지 문제가 발생된다.

 

사용 프로그램: PHP 5.26

 

그림 1. iconv 함수로만 처리했을 때의 문제, 도도(Dodo)

 

문자열 처리가 사람이 보는 것과는 달리 이러한 문제도 발생될 수가 있다.

문제를 해결할 수 있는 함수가 있다.

 


1. convertToUTF8 ( %s ) 구현하기

 


  // 한글 지원
  public function convertToUTF8($strTxt)
  {
          if(iconv("utf-8", "utf-8", $strTxt) == $strTxt){
               return $strTxt;
          }
          else
         {
              return iconv("euc-kr", "utf-8", $strTxt );
         }
  }

 

그림 1-1. iconv 함수로 기존 UTF8 문자열 감지

 

제어문과 iconv 함수를 활용하여 사람이 식별하지 못하는 문자열을 감지할 수 있다.

euc-kr로 변환해도 되는 경우를 구분하면 그림 1과 같은 문제를 해결할 수 있다.

 

 

반응형

+ Recent posts