2012-01-24 3 views
0

codeigniter에 대한 wiredesignz 모듈 식 확장 기능을 사용하고 있으며 모듈의 컨트롤러에서 일반 codeigniter 컨트롤러의 public 속성에 액세스 할 수 있는지 궁금합니다 (예 : ). 이것은 일반적인 ci 컨트롤러입니다 hmvc 모듈에서 컨트롤러 public controllor 속성에 액세스

<?php 

class Dog extends CI_Controller { 
    public $name; 


    function __construct() 
    { 
     $this->name = "xyz"; 
    } 

} 

이 모듈 컨트롤러

<?php 
    class Test extends MX_Controller { 
    function get_name() 
    { 
     //access the $name property of the dog controller here 
    } 
    } 
+0

실제로 이것을 사용해 보셨습니까? 올바르게 기억하면 MX_Controller는 CI_Controller를 확장하므로 public 및 protected 변수가 상속되어야합니다. 이 답변을보십시오 : http://stackoverflow.com/a/6456965/844726 – swatkins

답변

1

당신이 HMVC 당신의 컨트롤러의 전부 또는 일부가 MX_Controller에서 상속 할 수 없습니다 이유가 없다 사용하는 경우. MX_Controller를 상속 한 일반 응용 프로그램/컨트롤러 또는 응용 프로그램/코어 폴더에 컨트롤러를 가질 수 있지만 "모듈"컨트롤러 일 필요는 없습니다. 다른 컨트롤러에서 한 컨트롤러의 속성에 액세스해야하는 경우 기본 컨트롤러를 만들지 않는 이유 (예 : MX_Controller를 확장하는 MY_Controller를 application/controllers 또는 application/core에 넣은 다음 "모듈"컨트롤러를 만들 때마다 MX_Controller 대신 MY_Controller에서 상속받습니다.

모듈 컨트롤러를로드하고 라이브러리 클래스처럼 사용할 수 있습니다.

관련 문제