CI 묻고 답하기

제목 $this->model->function()
글쓴이 템포 작성시각 2013/07/24 10:10:12
댓글 : 3 추천 : 0 스크랩 : 0 조회수 : 12943   RSS
function 이름이 예를 들어서

test_modify 라고 했을 때 질문입니다.

test는 어떤 변수를 통해서 받는 값이라고 했을 때

$gubun = test

$gubun._modify 이렇게 해서는 모델부분까지 연결이 되지 않던데...

저렇게 한번에 처리하는 방법은 안되는건가요 ?

$test = $gubun._modify

$this->model->$test(); 이렇게 하면 나오긴 나오던데 .. 깔끔해보이지 않아서요..
 다음글 페이지 로딩 속도 (4)
 이전글 한서버에 다른 도메인간 세션 공유 (4)

댓글

전상민 / 2013/07/24 10:28:35 / 추천 0
$this->model->{$gubun . '_modify'}();
이런 형태로도 작성 할 수 있습니다.

변종원(웅파) / 2013/07/24 10:37:24 / 추천 0
선호하지 않는 방식인데요... 프로그램상에서 해당함수 추적이 쉽지 않고 유지보수시 문제가 생길 소지가 있습니다.

$func_name = $gubun.'_modify';

$this->model->$func_name();

형태가 맞습니다. 가변함수라고 합니다.
템포 / 2013/07/24 10:48:01 / 추천 0
전상민님 웅파님 답변 감사합니다.

나름 코드를 간략하게 줄여보려고 했던 방법인데..

일단 처리는 하고 후에 문제가 될 시 다른 방법을 생각해봐야겠습니다.

감사합니다.