View-klas in jou eie MVC-raamwerk
Nou gaan ons die klas View maak,
wat verantwoordelik sal wees vir die aanbieding van data.
Dit sal 'n instansie van die klas
Page as parameter ontvang, en as resultaat
die voltooide HTML-kode van die bladsy teruggee, wat
op die skerm vertoon kan word.
Kom ons kyk hoe ons die klas
View gaan gebruik in die lêer index.php:
<?php
namespace Core;
error_reporting(E_ALL);
ini_set('display_errors', 'on');
spl_autoload_register(function($class) {
// jou implementasie van outolading
});
$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); // dis hoe ons die View-klas gebruik
?>
Die struktuur van die View-klas se kode sal
die volgende vorm hê:
<?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) {
}
}
?>