Oz MVC framworkində renderView metodu
renderView metodu
gorsəlmə faylını alacaq və ona
dəyislərin qiymətlərini əlavə edəcək.
Bu hiyləgər şəkildə edilir.
Bildiyiniz kimi, gorsəlmə faylında
istifadə edilən dəyislər, Page
sinfinin obyektinin data xassəsində
yerləşir.
Bu dəyislər assosiativ massivdir.
Bizim bu massivi həqiqi dəyislərə
cevirməyimiz lazımdır, sonra isə
include vasitəsilə gorsəlmə
faylını birləşdirməliyik.
Bu halda, bu faylda movcud olan
gostərilən dəyislər oz qiymətlərini
alacaq və cıxışda biz artıq
dəyislərin qiymətləri əlavə edilmiş
sadə HTML kodunu alacıq.
Massivi dəyislərə cevirmək ucun
xüsusi extract funksiyasından istifadə edirik:
<?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); // massivi dəyislərə
include $viewPath; // gorsəlmə faylını birləşdiririk
return ob_get_clean();
}
}
?>