질문 Q #9488
hooks 사용해서 다국어 페이지를 만드는 중 입니다.
Luzi.kr 2011-09-28 16:25:56
 안녕하세요.

CI를 사용하여 다국어 지원 게임 API를 제작 중입니다.

포럼에서 검색을 통해 많은 분들의 팁과 사용기등을 보고 적용 하는 데 상수 선언이 제대로 되지 않아서

이렇게 질문 드립니다.

config.php 파일
$config['enable_hooks'] = TRUE;
hooks.php 파일

$hook['pre_system'][] = array(
   'function' => 'get_lang',
   'filename' => 'locale_lang.php',
   'filepath' => 'hooks');
controllers/hooks/locale_lang.php 파일
<?php
 function get_lang() {
  $lang = 'english';
  $agent = trim($_SERVER['HTTP_USER_AGENT']);
  if($agent)
  {
   $temp = explode(';', $agent);
   $code = substr(trim($temp[1]), 0, -1);
   $x = explode('_', $code);

   switch($x[0])
   {
    case 'en':
     $lang = 'english';
    break;
    case 'jp':
     $lang = 'japanese';
    break;
    case 'kr':
     $lang = 'korean';
    break;
   }
  }

  define('LANGUAGE_TYPE', $lang);
 }
test.php 파일
function luzi()
{
      echo LANGUAGE_TYPE;
}
실행 결과

Message: Use of undefined constant LANGUAGE_TYPE - assumed 'LANGUAGE_TYPE'



위와 같은 결과가 나옵니다. 어디가 잘 못됬는지 잘 모르겠습니다.

읽어 주셔서 감사합니다.

답변 3
#1 변종원(웅파) 2011-09-29 00:10:15
매뉴얼은 정독을 하셔야 합니다.

hooks라고 선언을 하시면 application/hooks/ 디렉토리를 참조합니다.

controllers/hooks/locale_lang.php   ->    application/hooks/locale_lang.php
#2 Luzi.kr 2011-09-29 10:24:49
아...부끄럽습니다.

급한 마음에 자꾸 코드는 안되고 해서 자세히 보지 못한 실수 입니다.

웅파님 감사합니다.
#3 변종원(웅파) 2011-09-29 11:54:03
넵. 급할수록 돌아가라는 속담. ^^