언어파일 위치 (기본)
application/language/english
1. 언어별 디렉토리 생성 (englishfmf 복사하면 됨)
application/language/ko
application/language/en
application/language/jp 등등...
2. 언어 파일 생성 (언어파일은 _lang.php 라는 접미어와 확장자를 포함함)
application/language/ko/main_lang.php
<?
php defined('BASEPATH') OR exit('No direct script access allowed');
$lang['main_txt1'] = '안녕하세요';
3. 기본언어설정 변경
application/config/config.php
$config['language'] = 'ko';
4. controller 생성
application/controller/Main.php
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Main extends CI_Controller {
function __construct()
{
parent::__construct();
//언어파일 load (auto load시 삭제)
$this->lang->load('main', 'ko'); //실제로 로드되는 파일은 main_lang.php
//언어파일을 동시에 load할 경우
//$this->lang->load(array('main', 'main2'));
}
public function index()
{
//언어파일 load
//$this->lang->load('main', 'ko');
//언어파일에서 텍스트 가져오기
//(언어 텍스트가 존재하는지 확실하지 않은 경우에 에러 로깅을 비활성화 FALSE 설정)
$data['main_box_today'] = $this->lang->line('main_txt1', FALSE);
$this->load->view('index', $data); //view 파일에 전달
}
}
5. autoload
application/config/autoload.php
$autoload['language'] = array('main', 'main2', 'main3');
6. 언어 교체시 (예시)
$lang = isset($_SESSION['language']) ? $_SESSION['language'] : 'ko'; //ko, en 등
$this->lang->load('main', $lang); //실제로 로드되는 파일은 main_lang.php
$oops = $this->lang->line('main_txt1', FALSE);
* helper를 사용해서 language 전체를 로드해서 view 레벨에서 각각의 텍스트를 바로 사용가능합니다.
1. controller에서 로드후 사용
application/controllers/Main.php
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Main extends CI_Controller {
function __construct()
{
parent::__construct();
//helper load
$this->load->helper('language'); //auto load를 사용한다면 삭제
//언어파일 load
$lang = isset($_SESSION['language']) ? $_SESSION['language'] : 'ko';
$this->lang->load('main', $lang);
}
public function index()
{
$this->load->view('index');
}
}
view에서 사용
<?=lang('main_txt1'); ?>
2. auto load 사용
application/config/autoload.php
$autoload['helper'] = array('language');
view에서 사용
<?=lang('main_txt1'); ?>
참조 :
www.ciboard.co.kr/user_guide/kr/libraries/language.html
www.ciboard.co.kr/user_guide/kr/general/helpers.html
'[ Web 관련 ] > 코드이그나이터 3.x.x' 카테고리의 다른 글
CI include 절대 경로 (Views 에서) (0) | 2020.05.14 |
---|---|
세션사용 (0) | 2020.05.07 |
전역변수 사용 (config 디렉토리) (0) | 2020.04.29 |
로더 Loader Class (0) | 2019.08.01 |
코드 이그나이터 시작 - 첫 페이지 만들기 (0) | 2019.08.01 |