본문으로 바로가기

언어파일 위치 (기본)

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

 

Language Class ‐ 코드이그나이터 3.0 한글매뉴얼

Array of language lines if $return is set to TRUE, otherwise void

www.ciboard.co.kr

www.ciboard.co.kr/user_guide/kr/general/helpers.html

 

Helper Functions ‐ 코드이그나이터 3.0 한글매뉴얼

헬퍼 함수들 Helper Functions 헬퍼는 여러분의 일에 뭔가를 제안하고 도와주는 존재입니다. 각각의 헬퍼파일은 특정 영역에 해당하는 함수들의 모음입니다. 예를 들어 URL 헬퍼 의 경우 링크 생성을 도와주며,Form 헬퍼는 폼의요소를 만드는데 도움이 되고, Text 헬퍼는 다양한 텍스트 처리(formatting)을 도와주며, Cookie 헬퍼는 쿠키를 읽고 쓰는데, File 헬퍼는 파일을 조작하는데 도움이 될것입니다. CodeIgniter의 다른

www.ciboard.co.kr