renderView-metode vir jou eie MVC-raamwerk
Die metode renderView sal die lêer
van die siening ontvang en die waardes van die
veranderlikes daarin vervang. Dit word op 'n slim manier gedoen.
Soos jy weet, is die veranderlikes wat gebruik word
in die lêer met die siening, vervat in die eienskap
data van die objek van die klas Page.
Hierdie veranderlikes is 'n assosiatiewe
array. Ons moet hierdie array omskep
in werklike veranderlikes, en dan die
lêer met die siening insluit via include.
In hierdie geval sal die beskikbare veranderlikes in hierdie
lêer hul waarde kry en
aan die uitkant sal ons net HTML-kode kry alreeds
met die vervangde waardes van die veranderlikes.
Om die array in veranderlikes om te skakel,
gebruik ons die spesiale funksie extract:
<?php
private function renderView(Page $page) {
$viewPath = $_SERVER['DOCUMENT_ROOT'] . "/project/views/{$page->view}.php";
if (file_exists($viewPath)) {
ob_start();
$data = $page->data;
extract($data); // array na veranderlikes
include $viewPath; // sluit die lêer met die siening in
return ob_get_clean();
}
}
?>