CI 묻고 답하기

제목 CI 내부함수 질문
글쓴이 학학이 작성시각 2016/07/20 10:49:51
댓글 : 4 추천 : 0 스크랩 : 0 조회수 : 14824   RSS

CI로 views에서 if문으로 처리하는 데이터를

controllers로 처리하도록 변경하는 작업중에 질문 드립니다.

<div>
  <?php
    if(조건식){
      <h1>A</h1>
    }else{
      <h1>B</h1>
    }
  ?>
</div>

views에 이런 코드가 너무 많아서

 

controllers 에서 

function index(){
  $test = _test();
  $this->load->view('test', $test);
}

function _test(){
  if(조건식){
    return "<h1>A</h>"
  }else{
    return "<h1>A</h>"
  }
}

 

이런식으로 하는거 아닌가요?

 

1.혹시 view에 인자값으로 배열만 들어갈 수 있나요?

2. 보통 다른 언어에서는 $test = _getHost();

이런식으로 하는데 $this->test = _getHost(); 이건 다른 건가요?

 

 다음글 CI 컨트롤러에서 모델은 어떻게 불러 쓰나요? (2)
 이전글 폼 send시에 콜백함수로 얻어온 값(주문pk값)이 이... (6)

댓글

한대승(불의회상) / 2016/07/20 10:55:46 / 추천 1

1. 배열만 전달 할 수 있습니다. 배열 인덱스가 변수명이 되니 숫자로된 인덱스를 넘기면 안되겠죠.

2. $this->test 객체 변수, $test 지역 변수 입니다.

학학이 / 2016/07/20 11:07:08 / 추천 0

@한대승(불의회상)

function index(){
  $test = _test();
}
 
function _test(){
  if(조건식){
    return "<h1>A</h>"
  }else{
    return "<h1>A</h>"
  }
}

이런 문법은 없는건가요?

kaido / 2016/07/20 11:10:58 / 추천 1
$test = $this->_test();

이렇게 사용하시면 됩니다.

 

학학이 / 2016/07/20 11:12:56 / 추천 0

@Kaido 

계속 여러 방법으로 시도하다 찾았는데 맞는 방법이었네요 ㅎㅎ

감사합니다.