CI 묻고 답하기

제목 include 문의 드립니다.
카테고리 CI 2, 3
글쓴이 LEO 작성시각 2019/08/02 15:02:11
댓글 : 5 추천 : 0 스크랩 : 0 조회수 : 12096   RSS

ci 초보입니다.

일단 최대한 검색해보고 질문 드립니다.

 

view 페이지 상에서 특정부분을 include 할려고하는데요.

controller에서 아래 방식처럼 순차적으로 include 하는게 아니구요,

$this->load->view('header'); 

$this->load->view('main'); 

$this->load->view('footer');

아래와 같은 구조에서, 

[controllers]

- Main.php

- Aaa.php

 

[views]

- main.php

- aaa.php

 

main.php의 특정 부분에 aaa.php 내용을 넣으려고 합니다.

aaa.php는 controller Aaa.php에 따로 함수가 구현되어있는 상태이구요.

이럴때는 어떻게 처리를 해야 하나요?

 

view 레벨에서는 controller의 함수를 호출 못하고..

main.php에서 a.php를 그냥 include할수도 없고..

 

HMVC를 이용하면 된다고 해서 적용해서 분리는 했는데 정작  a.php include를 어떻게 호출하는지 찾아봐도 음..잘모르겠네요..

 

도움좀 부탁드리겠습니다..

감사합니다. 

 

 

 

 

 

 다음글 이미지 회전 추가 문의 (2)
 이전글 $this->load시 매번 호출해야 하나요? (2)

댓글

한대승(불의회상) / 2019/08/02 17:21:12 / 추천 0

main.php 에서 아래와 같이 하시면 됩니다.

<?php $this->load->view('aaa') ?>

 

LEO / 2019/08/02 17:49:55 / 추천 0

한대승(불의회상) 님 답변감사합니다.

알려주신대로 하면 controllers의 Aaa.php 함수가 실행되는건 아니죠?

제가 원하는건 controllers의 Aaa.php 를 통해서 함수코드도 실행하고, 

$this->load->view('aaa');  도 실행하길 원해서요..

한대승(불의회상) / 2019/08/02 18:03:11 / 추천 0

컨트롤러는 다른 컨트롤러에서 로드해서 실행 시킬수 없습니다.

kaido / 2019/08/05 09:52:11 / 추천 0

var_dump($this);  

컨틀롤러에서 실행 하시면 CI 컨트롤러의 정체가 나타납니다.

컨트롤러에서 컨트롤러를 인클루드 한다는건 동량의 오브젝트를 더 호출 하겠다는 의미가 됩니다.

HMVC도 원하시는 해당 기능하고는 다릅니다. 이건 멀티모듈을 만드는 개념이지, 다른 컨트롤러를 호출하거나 하지 않습니다.

include가 정말로 필요한 구조이면 include 사용하시면 됩니다.

LEO / 2019/08/05 10:11:14 / 추천 0

한대승(불의회상) 님, kaido 님 답변감사합니다.

어렵군요 ;; 감사합니다.