정의 위치

  • ./classes/context/Context.class.php

정의 내용

/**
 * Convert strings into UTF-8
 *
 * @param string $str String to convert
 * @return string converted string
 */
function convertEncodingStr($str)
{
    if(!$str) return null;
    $obj = new stdClass();
    $obj->str = $str;
    $obj = self::convertEncoding($obj);
    return $obj->str;
}

 

용도

  • 미지의 캐릭터 셋을 가진 문자열을 UTF-8 캐릭터셋 인코딩으로 변환합니다.
  • 참고 :  PHP iconv 함수를 이용합니다.

파라메터

  • string $str : 인코딩을 알 수 없는 문자열이다. 입력된 문자열은 다음 인코딩 중 하나일 수 있다. (Context::convertEncoding() 메소드 정의 중)
    • 'UTF-8', 'EUC-KR', 'CP949', 'ISO8859-1', 'EUC-JP', 'SHIFT_JIS', 'CP932',
         'EUC-CN', 'HZ', 'GBK', 'GB18030', 'EUC-TW', 'BIG5', 'CP950', 'BIG5-HKSCS',
         'ISO2022-CN', 'ISO2022-CN-EXT', 'ISO2022-JP', 'ISO2022-JP-2', 'ISO2022-JP-1',
         'ISO8859-6', 'ISO8859-8', 'JOHAB', 'ISO2022-KR', 'CP1255', 'CP1256', 'CP862',
         'ASCII', 'ISO8859-1', 'ISO8850-2', 'ISO8850-3', 'ISO8850-4', 'ISO8850-5',
         'ISO8850-7', 'ISO8850-9', 'ISO8850-10', 'ISO8850-13', 'ISO8850-14',
         'ISO8850-15', 'ISO8850-16', 'CP1250', 'CP1251', 'CP1252', 'CP1253', 'CP1254',
         'CP1257', 'CP850', 'CP866'

예시

  1. ./classes/module/ModuleHandler.class.php
    • ModuleHandler class 의 ModuleHandler 메소드
    • 어떤 인코딩으로 입력 받을지 알 수 없는 entry 변수에 적용되었다. entry 변수는 위키나 텍스타일에서 검색 엔진 친화적인 주소 설정 등에 쓰인다.
    • if($entry = Context::get('entry'))
      		{
      		    $this->entry = Context::convertEncodingStr($entry);
      		}

       
  • ?
    오호.. 이런게 있었군요.
  • ? ?
    네 ㅋㅋ 특히 이 함수는 아주 옛날 버전부터 있던거라 막 쓰셔도 돼요.