Я пытаюсь не повторять один и тот же код снова и снова в каждом контроллере. Поэтому я помещаю функцию, которая извлекает данные в родительском контроллере, и я пытаюсь передать эти данные в дочернем контроллере.как я могу передать данные от родительского контроллера в codeigniter
class Frontend_Controller extends MY_Controller
{
public function __construct()
{
parent::__construct();
$this->load->model('configOptionsModel');
$this->db->where('configid = "2"');
$specialdata['bgimage'] = $this->configOptionsModel->get();
}
}
Вот код для контроллера ребенка
class Home extends Frontend_Controller {
public function __construct() {
parent::__construct();
print_r($this->specialdta); // line where error occurs
die();
}
public function index()
{
$data['main_content'] = 'home';
$this->load->view('frontEnd/template',$data);
}
}
я получаю следующее сообщение об ошибке:
A PHP Error was encountered
Severity: Notice
Message: Undefined property: Home::$specialdta
Filename: controllers/home.php
Line Number: 9
Конечно, строка 9: print_r ($ this-> specialdta) ;
Я знаю, что если вы продлеваете контроллер (класс), у вас есть доступ к методам и свойствам родительского контроллера (классов), поскольку они объявлены общедоступными.
Может ли кто-нибудь объяснить мне, что я делаю неправильно?
С уважением, Зоран
Как всегда, ваши ответы содержат как решение, так и учебный урок. Приятно видеть тебя снова Иорданией. Спасибо за вашу помощь. – Zoran