사용자 도구

사이트 도구


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

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

tech:codeigniter:03.globalization:02.모듈:localehelper [2019/01/09 19:42] (현재)
endofsky 만듦
줄 1: 줄 1:
 +====== Class : KTK_LocaleHelper ======
 +각 국가의 Locale 환경 적용을 위한 helper class
 +SingleTon 방식으로 Class가 구현되어 있어 new 명령으로 생성 불가 (한 process에서 중복 초기화 방지)
 +
 +호출방법 ​ :
 +<code php>
 +KTK_LocaleHelper::​get_instance();​
 +</​code>​
 +
 +클래스 권장 위치 : /​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} 과 {@} 과 {@} 입니다.'​ 일 경우
 +<code php>
 +_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'​); ​ # @는 순서대로 한개씩만 적용. 변환할 값보다 파라미터 갯수가 많아도 무방함
 +</​code>​
 +
 +=== 결과 ===
 +<​code>​
 +이건 {@2} 과 {@1} 과 {@2} 과 {@} 과 {@} 입니다.
 +이건 2 과 1 과 2과 {@} 과 {@} 입니다.
 +이건 2 과 1 과 2과 3 과 {@} 입니다.
 +이건 2 과 1 과 2과 3 과 {@} 입니다.
 +이건 2 과 1 과 2과 3 과 4 입니다.
 +</​code>​
 +
 +----
 +
 +==== Method : getDateTime ====
 +''​public''​
 +
 +시스템(DB)의 시간을 로컬 시간으로 변환하는 method
 +
 +=== Input Param ===
 +$args[0] : [필수] (string) 시간 (한국시간,​ 한국포맷)
 +
 +$args[1] : [선택] (string) 노출 포맷
 +
 +=== Return Value ===
 +현지 시간 ( 아래 사용법 참조 )
 +
 +=== 사용법 ===
 +<code php>
 +_L(_DATETIME,​ '​2018-01-12 11:​21:​17'​);​ # 서버시간(한국시간) 을 현지 시간으로 변경 / 표시
 +_L(_DATETIME,​ '​2018-01-12 11:​21:​17',​ 'Y-m-d h'); # 포맷 지정 가능
 +</​code>​
 +
 +=== 결과 ===
 +Locale이 en_US 일 경우
 +<​code>​
 +Jan/11/2018 21:21:17
 +2018-01-11 09
 +</​code>​
 +
 +----
 +
 +==== Method : getMoneyFormat ====
 +''​public''​
 +
 +현지 기준의 통화형식 표시 (환율 변환 기능 없음)
 +
 +=== Input Param ===
 +$args[0] : [필수] (string) 금액
 +
 +$args[1] : [선택] (string) 노출 옵션 (아래 참조, 중복 가능, [[http://​php.net/​manual/​en/​function.money-format.php|참조]])
 +  * 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 ===
 +현지 통화방식으로 노출 ( 아래 사용법 참조 )
 +
 +=== 사용법 ===
 +<code php>
 +_L(_MONEY, '​123.45'​); ​
 +_L(_MONEY, '​123.45',​ '​i'​); ​
 +_L(_MONEY, '​123.45',​ '​!'​); ​
 +</​code>​
 +
 +=== 결과 ===
 +Locale이 en_US 일 경우
 +<​code>​
 +$ 123.45
 +USD 123.45
 +123.45
 +</​code>​
  
tech/codeigniter/03.globalization/02.모듈/localehelper.txt · 마지막으로 수정됨: 2019/01/09 19:42 저자 endofsky