Medlem
|
|
Reg.datum: Nov 2003
Inlägg: 214
|
|
Medlem
Reg.datum: Nov 2003
Inlägg: 214
|
Tror du är inne på rätt spår..
Jag brukar använda en "View" klass ,
som hanterar olika template filer.
T.ex kan en sid template se ut så här:
<div>
<h1><?php echo $this->h1 ;?></h1>
<p><?php echo $this->content;?></p>
</div>
Sidans controller instansierar ett objekt
$page= new View("sida1.php");
$page->content = "Innehållet";
$page->h1 ="header";
Och sen brukar jag ha en template för själva layouten, det binds samman så här rent principiellt typ:
$master= new View("Master.php");
$master->content = $page->render();
Master.php :
<head>
<title>test</title>
</head>
<body>
<main><?php echo $this->content;?></main>
</Body>
Det är även bra att undvika att skapa objekt direkt från en controller , så det ser ut så här i praktiken..
class Page extends \MyLib\ControllerAbstract
{
public function index()
{
$this->view->h1 = "h1";
$this->view->content = "xx..";
$this->masterView->doc_title = " dokument titel "; // bra om man även kan modifiera master sidan direkt så här typ
return $this->view; // $this->view är en instans av "View" klass
}
}
|