codeigniter hmvc доступ к переменным родительского класса

Timur

Новичок
Добрый день.
В контроллере модуля необходимо получить доступ к переменным основного класса

Пример
Основной класс

PHP:
<?php
class Main extends MX_Controller {
public $test, $test_2;
function __construct()
{
$this->test='Проверка переменной тест';
}
function index()
{
$this->test_2 = Modules::run('test');
echo $this->test_2;
}
Класс модуля

PHP:
class Test extends MX_Controller {

public function index()
{
return 'Проверка связи'.$this->test;
}

}
Undefined property: CI::$test_2

Но если расширить класс модуля от родительского контроллера

PHP:
class Test extends Main {

public function index()
{
return 'Проверка связи'.$this->test;
}

}
Все работает как надо

Можно ли так делать?
Если не так, то что посоветуете?
Передачу параметров модулю не предлагайте пожалуйста
 

domencom

Новичок
Тут лучше вам почитать мануал по объектам, области видимости наследованию и т.д.
http://www.php.net/manual/ru/language.oop5.basic.php
книга https://www.google.com.ua/#q=объекты+шаблоны+и+методики+программирования для php устарела но базу дает по шаблонам проектирования.
И вот такое тоже нужно но можно на потом: https://www.google.com.ua/#q=банда+четырех+паттерны
 

Timur

Новичок
Уважаемый domencom.
Я это читал
Вопрос был конкретно про codeigniter hmvc, с которым пришлось столкнуться.
Вариант с наследованием класса модуля от основного контроллера полностью решил все проблемы
Я лишь хотел узнать не моветонно ло это.
Форумы по сабжу мертвы. А здесь даже раздела про него нет.
 

domencom

Новичок
Уважаемый domencom.
Я это читал
Вопрос был конкретно про codeigniter hmvc, с которым пришлось столкнуться.
Мое предложение было основано на вашем первом посте, ибо вопросы бы не возникли про:
Undefined property: CI::$test_2
и не было бы
Сорри, если обидел своей неуклюжей попыткой помочь.
 
Сверху