Classe View dans son propre framework MVC
Maintenant, nous allons créer la classe View,
qui sera responsable de la présentation des données.
Elle recevra en paramètre un objet de la classe
Page, et retournera comme résultat
le code HTML prêt de la page, qui pourra
être affiché à l'écran.
Voyons comment nous allons utiliser la classe
View dans le fichier index.php:
<?php
namespace Core;
error_reporting(E_ALL);
ini_set('display_errors', 'on');
spl_autoload_register(function($class) {
// votre implémentation de l'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); // voici comment nous utilisons la classe View
?>
La structure du code de la classe View aura
l'aspect suivant :
<?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) {
}
}
?>