Razred View v lastnem MVC ogrodju

Trenutno bomo ustvarili razred View, ki bo skrbel za predstavitev podatkov. Prejel bo parameter objekt razreda Page, kot rezultat pa bo vrnil končno HTML kodo strani, ki jo bo mogoče prikazati na zaslonu.

Poglejmo, kako bomo uporabljali razred View v datoteki index.php:

index.php<?php
  namespace Core;
  
  error_reporting(E_ALL);
  ini_set('display_errors', 'on');
  
  spl_autoload_register(function($class) {
    // vaša implementacija avtomatskega nalaganja
  });
  
  $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); // tako uporabljamo razred View
?>

Struktura kode razreda View bo imela naslednjo obliko:

/core/View.php<?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) {
      
    }
  }
?>