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

  • Автор темы Автор темы Timur
  • Дата начала Дата начала

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;
}

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

Можно ли так делать?
Если не так, то что посоветуете?
Передачу параметров модулю не предлагайте пожалуйста
 
Тут лучше вам почитать мануал по объектам, области видимости наследованию и т.д.
http://www.php.net/manual/ru/language.oop5.basic.php
книга https://www.google.com.ua/#q=объекты+шаблоны+и+методики+программирования для php устарела но базу дает по шаблонам проектирования.
И вот такое тоже нужно но можно на потом: https://www.google.com.ua/#q=банда+четырех+паттерны
 
Уважаемый domencom.
Я это читал
Вопрос был конкретно про codeigniter hmvc, с которым пришлось столкнуться.
Вариант с наследованием класса модуля от основного контроллера полностью решил все проблемы
Я лишь хотел узнать не моветонно ло это.
Форумы по сабжу мертвы. А здесь даже раздела про него нет.
 
Уважаемый domencom.
Я это читал
Вопрос был конкретно про codeigniter hmvc, с которым пришлось столкнуться.
Мое предложение было основано на вашем первом посте, ибо вопросы бы не возникли про:
Undefined property: CI::$test_2
и не было бы
Сорри, если обидел своей неуклюжей попыткой помочь.
 
Сверху