개발 Q&A

제목 컨트롤러에서 모델 로드에 대해 궁금한 점이 있습니다
카테고리 PHP
글쓴이 챠초보 작성시각 2021/02/26 10:50:17
댓글 : 2 추천 : 0 스크랩 : 0 조회수 : 6905   RSS

안녕하세요! CI 포럼에서 눈팅만 하던 초보개발자입니다.

궁금한게 생겨 질문 드립니다.

이번에 이직을 하면서 생긴 궁금증인데요

 

전 회사에서는 view에 사용되는 select 태그의 값들을 

model에 array로 정의하여 메소드로 구성 후 

controller에서 model을 load하여 메소드를 통해 데이터를 가져올 수 있도록 처리를 했었는데요

ex) 

// test_model.php
private $cloth = array(
        'T-Shirt' => '티셔츠',
        'Pants' => '바지',
        'Dress' => '원피스',
        'Skirt' => '스커트'
);

public function get_cloth_list() {
        return $this->members;
}

// test_controller.php
$this->load->model('test_model');
$cloth_list = $this->test_model->get_cloth_list();

 

 

이번에 이직한 회사에서는 위와 같은 방식을 사용하지 않고

controller의 __construct에서 select 태그의 값들을 사용하는 모든 controller에 똑같이 정의하더라구요

 

select 태그에 사용되는 값들이 추가되거나 삭제될 때, 한 번만 작업할 수 있도록 한꺼번에 관리를 하고 싶은 데

전회사의 케이스와 같이 model에 정의해놓고 메소드를 사용하기 위해 모델을 계속 로드해서 사용하는 건 문제가 생길 수 있을까요?

가령 부하라던가 로딩 속도라던가 말이죠..

 다음글 php array 문법 질문 있습니다. (6)
 이전글 플러그인 스크립트 없이 정렬이 가능할까요? (2)

댓글

변종원(웅파) / 2021/02/26 11:27:12 / 추천 1

데이터 하나 가져오려고 모델을 로딩하는 것은 낭비겠죠.

상수나 세션으로 처리하거나 컨트롤러 생성자에서 선언해서 쓰는게 비용상 유리합니다.

챠초보 / 2021/02/26 16:50:31 / 추천 0

@변종원(웅파)님 

그렇군요,, 답변 감사합니다. 

그렇다면 저런 내용을 한번에 관리하고 싶다면 constants 같은 곳에 선언하는게 제일 좋은 방법인 것 같네요 ㅠ ㅠ

하나 배워갑니다!