문서의 선택한 두 판 사이의 차이를 보여줍니다.
— |
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> | ||