Dopiero uczę się Smarty, a także próbuję programować przy użyciu MVC i mam następujący problem. Chciałbym wyświetlić sobie stworzony szablon logowanie.tpl. I mam 3 takie oto proste klasy.
Klasa Controller.php
<?php class Controller { //obiekt private $smarty; public function __construct(){ // $this->uruchomModel(); $this->uruchomWidok(); } /* private function uruchomModel(){ $this->Model = new Model; } */ //stworzenie obiektu smarty private function odpalSmarty(){ $this->smarty = new Smarty; } private function uruchomWidok(){ $this->View = new View($this->smarty); } } ?>
Klasa Model.php
<?php class Model { //na razie pusto } ?>
Klasa View.php
<?php require_once('./smarty/Smarty.class.php'); class View { private $smarty; public function __construct(){ $this->wyswietlStroneGlowna(); } private function wyswietlStroneGlowna(){ //gdy tak jak ponizej, czyli stworze tutaj sobie obiekt to poleci i sie odpali //$smarty = new Smarty; $smarty->display('./smarty/templates/logowanie.tpl'); } } ?>
A więc tak, jak przekazać obiekt stworzony w kontrolerze do widoku aby można było wyświetlić szablon? Bo jak sobie obiekt stworzę bezpośrednio w metodzie wyswietlStroneGlowna() to oczywiście wszystko pójdzie jak należy.