질문 Q #11783
CI_Controller 확장 질문 드립니다.
푸하라 2014-11-06 01:59:40
컨틀롤러에서 반복되는 작업이 꽤 많아서 컨트롤러를 생성할때마다 작업해야 될일이 있어서 
처음에는 컨트롤러 폴더에 비슷한 작업을 하는 클래스를  미리 여러개 생성하고 작업을 했습니다.

class  a_Controller extends CI_Controller;
class  b_Controller extends CI_Controller;
class  c_Controller extends CI_Controller;

이렇게 몇개를 만들어 놓고 
필요한곳에서 
class  board extends a_Controller;
class  page extends b_Controller;
class  process extends c_Controller;

이런식으로 작업을 하였는데 최근에 찾아보다 보니
application/core/ 
안에다가 작업을 해놓고 쓸수 있다는것을 알게 되었습니다.
그렇게 한다면 장점이 매번 
require_once  CI_Controller 
이런식으로 할 필요 없겠다싶어서 한번 적용을 할려고 했더니

class  MY_Controller extends CI_Controller;
식으로 딱 한개만 만들수 없는데 
위에 예처럼 미리 여러개의 컨트롤러를 상속하여 사용할 수 없는건가요????







 
답변 4
#1 한대승(불의회상) 2014-11-06 07:13:05
아래처럼 MY_Controller.php 에 주욱 기술하세요.
 
class MY_Controller extends CI_Controller {}
class Admin_Controller extends MY_Controller ()
class User_Controller extends MY_Controller()
#2 푸하라 2014-11-06 08:38:44
죄송하지만 좀더 자세히 설명해주시면 안될까요????

application/core 폴더안에   a_contrller.php , b_contrller.php , c_contrller.php 
생성하지 말고 
my_controller.php 안에 a_contrller , b_contrller , c_contrller 클래스를 생성해야 되는것인가요??

 
#3 한대승(불의회상) 2014-11-06 09:48:24
푸하라// 클래스가 한 파일에 여러개 있어도 됩니다.
여러개의 파일로 관리하고 싶다면 include_once나 require_once로 include 한 다음 사용하세요.
#4 푸하라 2014-11-07 07:35:16
감사합니다. 
이전부터 궁금했었는데 오늘에서야 궁금증을 풀었네요...