CI 묻고 답하기

제목 컨트롤러명과 함수명이 같은 경우
글쓴이 용준(쭌) 작성시각 2015/04/10 10:06:27
댓글 : 3 추천 : 0 스크랩 : 0 조회수 : 14092   RSS
안녕하세요 
오랜만에 질문 드립니다.

제가 A컨트롤러 안에 fn_A 함수를 만들어 사용하려는데요
404에러가 발생하네요...

fn_A1 이라는 함수로 만들면 정상 작동합니다.

어디를 좀 참고하면 좋을까요?
 다음글 view에 인자 전달할때 (2)
 이전글 ci session 크롬에서는 해제가 되는데 익스플러스... (1)

댓글

유마 / 2015/04/10 10:12:56 / 추천 0
왜... 컨트롤러 명이랑 함수명이랑 같게 하려는지 몰라도,
시스템 상으로 컨트롤러명과 함수명이 같아서 찾지를 못한다면,

함수명은 다르게 하고. route로... $route['A/fn_A'] = 'A/fn_A1'; 이렇게 해보면 어떨까요?
변종원(웅파) / 2015/04/10 10:37:40 / 추천 0
예약어 여부도 확인해보세요.
한대승(불의회상) / 2015/04/10 12:30:19 / 추천 0
PHP 5.0버젼 부터는 생성자를 __construct()를 사용하도록 하고 있지만 과거 버젼과의 호환성을 위해 컨트롤러명과 함수명이 같아도 생성자로 취급합니다.
호출이 안되는게 정상 입니다.
라고 생각 했는데...

function __construct(){} 가 선언 되어 있으면 사용 가능 하군요.. ㅡㅡ;;

class Fn_a extends CI_Controller {
    public function __construct() {
       parent::__construct();
    }

    public function fn_a() {
    }
}

한 후 http://localhost/fn_a/fn_a 해보세요.