Метод renderLayout за собствен MVC фреймуърк
Нека сега направим метод renderLayout.
Този метод ще взима файла на лейаута и ще замества
в него стойността на променливите $title
и $content (тя ще бъде подавана като
параметър на метода и ще представлява
резултата от работата на метода renderView):
<?php
private function renderLayout(Page $page, $content) {
$layoutPath = $_SERVER['DOCUMENT_ROOT'] . "/project/layouts/{$page->layout}.php";
if (file_exists($layoutPath)) {
ob_start();
$title = $page->title;
include $layoutPath; // тук ще бъдат достъпни променливите $title и $content
return ob_get_clean();
}
}
?>