사용자 도구

사이트 도구


사이드바

tech:codeigniter:03.globalization:02.모듈:localehelper

Class : KTK_LocaleHelper

각 국가의 Locale 환경 적용을 위한 helper class SingleTon 방식으로 Class가 구현되어 있어 new 명령으로 생성 불가 (한 process에서 중복 초기화 방지)

호출방법 :

KTK_LocaleHelper::get_instance();

클래스 권장 위치 : /common/locale/


Method : get_instance

public, static

기 생성된 instance를 return, 최초 호출시 생성하여 return


Method : getText

public

다국어 텍스트 표시를 위한 method

Input Param

$args[0] : [필수] (string)텍스트 코드

$args[1] ~ [n] : [선택] (string|array) 변환할 데이터 ( 텍스트의 {@1}, {@2} … 부분이 순서대로 (중복) 변경된다. {@} 로도 변환이 가능하며 이 때에는 앞에서부터 한 개씩 차례로 변환된다. {@n} 방식과 {@} 방식이 혼용 가능하며, 우선순위는 {@n} 이 우선이다. 아래 사용법 참조)

Return Value

텍스트 String ( 아래 사용법 참조 )

사용법

'test'코드의 값이 '이건 {@2} 과 {@1} 과 {@2} 과 {@} 과 {@} 입니다.' 일 경우

_L(_MSG,'test'); # 언어에 맞는 string 노출
_L(_MSG,'test','1','2'); # 할당된 string에 {@} 부분을 이후 파라미터에 맞춰 parse
_L(_MSG,'test','1','2', '3'); # 할당된 string에 {@} 부분을 이후 파라미터에 맞춰 parse
_L(_MSG,'test',array('1','2'),'3');  # 상기 동일. 단 파리미터가 배열값이어도 인식 가능
_L(_MSG,'test','1', '2', '3', '4', '5');  # @는 순서대로 한개씩만 적용. 변환할 값보다 파라미터 갯수가 많아도 무방함

결과

이건 {@2} 과 {@1} 과 {@2} 과 {@} 과 {@} 입니다.
이건 2 과 1 과 2과 {@} 과 {@} 입니다.
이건 2 과 1 과 2과 3 과 {@} 입니다.
이건 2 과 1 과 2과 3 과 {@} 입니다.
이건 2 과 1 과 2과 3 과 4 입니다.

Method : getDateTime

public

시스템(DB)의 시간을 로컬 시간으로 변환하는 method

Input Param

$args[0] : [필수] (string) 시간 (한국시간, 한국포맷)

$args[1] : [선택] (string) 노출 포맷

Return Value

현지 시간 ( 아래 사용법 참조 )

사용법

_L(_DATETIME, '2018-01-12 11:21:17'); # 서버시간(한국시간) 을 현지 시간으로 변경 / 표시
_L(_DATETIME, '2018-01-12 11:21:17', 'Y-m-d h'); # 포맷 지정 가능

결과

Locale이 en_US 일 경우

Jan/11/2018 21:21:17
2018-01-11 09

Method : getMoneyFormat

public

현지 기준의 통화형식 표시 (환율 변환 기능 없음)

Input Param

$args[0] : [필수] (string) 금액

$args[1] : [선택] (string) 노출 옵션 (아래 참조, 중복 가능, 참조)

  • n : $ 1,234.00 (default)
  • i : KRW 1,234
  • .2i : KRW 1,234.00 (강제 소수점 2자리)
  • #10n : 10자리로 표시 후 우측정렬 “$ 1,234.57”
  • ! : 통화기호 제외 1,234.56

Return Value

현지 통화방식으로 노출 ( 아래 사용법 참조 )

사용법

_L(_MONEY, '123.45'); 
_L(_MONEY, '123.45', 'i'); 
_L(_MONEY, '123.45', '!'); 

결과

Locale이 en_US 일 경우

$ 123.45
USD 123.45
123.45
tech/codeigniter/03.globalization/02.모듈/localehelper.txt · 마지막으로 수정됨: 2019/01/09 19:42 저자 endofsky