제목 | 중복 코드 리팩토링 문의 | ||
---|---|---|---|
카테고리 | CI 2, 3 | ||
글쓴이 | 이시태 | 작성시각 | 2019/08/20 11:35:32 |
|
|||
A 라는 컨트롤러에 C 라는 라이브러리 (자체 개발) 를
1천줄 가량 되는 각 함수마다 불러오는데요.
이걸 함수마다 불러오는게 아닌
모델 불러오는것 마냥 한번만 상단에 선언해주는 방법이 없을까요?
첨부파일 처럼
$array 배열에 담은 변수들은 모두 함수 내에 불러와야 하는 것들입니다.
|
|||
다음글 | 페이지 번호 처리를 하기 위해서는 좀 쉬운 방법이 없을... (4) | ||
이전글 | 다른 컨트롤러의 함수를 이용 하고 싶습니다. (6) | ||
배강민
/
2019/08/20 11:46:06 /
추천
1
|
kaido
/
2019/08/20 11:50:16 /
추천
1
무엇을 원하시는지는 잘 모르겠으나, 패턴이 반복되는 코드를 넣기 싫다는 것인가요? 매번 사용할것 같으면 라이브러리에서 떼어서 코어확장에 넣고 메소드 호출해서 사용하는 방법도 있습니다. 아니면 팩토리패턴 형태로 바꿔서 오브젝트형태로 받아간다든지, 코드의 형태가 바뀌는건 있으나, 알아서 잘 맞춰주는 방법은 없습니다. |
변종원(웅파)
/
2019/08/20 12:08:15 /
추천
1
hook을 이용해서 상수로 선언하는 방법도 있습니다. 컨트롤러 construct 에서 $this->arrayValue 형태로 선언해서 사용하는 방법도 있구요 |
이시태
/
2019/08/20 13:13:20 /
추천
0
배강민님 // 아항 그렇게 하면 되겠네요 그런 간단한 방법을 흐흐 감사합니다.
kaido 님 // 네 맞습니다. 그렇게 하면 코드량이 전체적으로 줄어들어서 보기도 좋을 거 같아서도 ㅋ 답변 감사드립니다!!
변종원님 // 아 이런 방법도 있군요! 한번 시도 해 보겠습니다! 답변 감사합니다. |
방법은 여러가지가 있겠지만,
가장 간단히는 생성자에서 실행해서 멤버변수나 const나 static 등에 넣어두고 사용하는거지 않을까 싶네요