Clasa View în propriul framework MVC
Acum vom crea clasa View,
care se va ocupa de prezentarea datelor.
Ea va primi ca parametru un obiect al clasei
Page, iar ca rezultat va returna
codul HTML gata de pagină, care poate
fi afișat pe ecran.
Să vedem cum vom folosi clasa
View în fișierul index.php:
<?php
namespace Core;
error_reporting(E_ALL);
ini_set('display_errors', 'on');
spl_autoload_register(function($class) {
// implementarea dvs. de autoloading
});
$routes = require $_SERVER['DOCUMENT_ROOT'] . '/project/config/routes.php';
$track = ( new Router($routes) ) -> getTrack($_SERVER['REQUEST_URI']);
$page = ( new Dispatcher ) -> getPage($track);
echo (new View) -> render($page); // așa folosim clasa View
?>
Structura codului clasei View va avea
următoarea formă:
<?php
namespace Core;
class View
{
public function render(Page $page) {
return $this->renderLayout($page, $this->renderView($page));
}
private function renderLayout(Page $page, $content) {
}
private function renderView(Page $page) {
}
}
?>