CI 묻고 답하기

제목 안녕하세요 검색해도 못찾아서 질문 좀 드립니다. 멀티 랭귀지에 관해서요
글쓴이 미드필드 작성시각 2014/04/22 06:07:57
댓글 : 2 추천 : 0 스크랩 : 0 조회수 : 16679   RSS
Codeigniter 2.14  + HMVC + Multi language ( https://github.com/EllisLab/CodeIgniter/wiki/CodeIgniter-2.1-internationalization-i18n )\

해서 작업을 하고 있는데요 기본 랭귀지를 영어가 아닌 일어로 할려고 합니다.
config.php 파일에도 $config['language']    = 'japanese'; 로 바꾸어주고

// MY_lang.php
  private $languages = array(
    'jp' => 'japanese',
    'en' => 'english',
    'de' => 'german',
    'fr' => 'french',
    'nl' => 'dutch',
    'cn' => 'chinese',
    'kr' => 'korean',
  );

MY_lang.php 코어 파일에도 영어가 아닌 일어를 첫번째에 두고 했는데도
사이트 처음 로드 하면 site.com/en/home 으로 영어가 기본으로 뜹니다.

 다른언어로 기본이 되게 할려면 또 어디를 세팅해줘야 할까요?

감사합니다.
 다음글 라이브러리를 왜 못 불러 올까요 ? (3)
 이전글 이미지 업로드 (3)

댓글

변종원(웅파) / 2014/04/22 12:04:35 / 추천 0
위키 로그인해야하네요. ㅋ

multi language에도 config 파일이 따로 있지 않나요?
미드필드 / 2014/04/22 13:22:58 / 추천 0
core 폴더안에 MY_lang.php 에서 기본 언어를 브라우져 에 따라서 결정하게 되어있네요 
웅파님 config 라는 말에 힌트를 얻어 코어 파일 다 뒤져보니 답을 찾았네요 감사합니다 ㅎ

function default_lang()
  {
    $browser_lang = !empty($_SERVER['HTTP_ACCEPT_LANGUAGE']) ? strtok(strip_tags($_SERVER['HTTP_ACCEPT_LANGUAGE']), ',') : '';
    $browser_lang = substr($browser_lang, 0,2);
  
    
    if(array_key_exists($browser_lang, $this->languages))
        return $browser_lang;
    else{
        reset($this->languages);
        return key($this->languages);
    }
  }