Klasse View im eigenen MVC-Framework

Jetzt werden wir die Klasse View erstellen, die für die Darstellung der Daten zuständig sein wird. Sie wird als Parameter ein Objekt der Klasse Page erhalten und als ihr Ergebnis den fertigen HTML-Code der Seite zurückgeben, der auf dem Bildschirm ausgegeben werden kann.

Schauen wir uns an, wie wir die Klasse View in der Datei index.php verwenden werden:

index.php<?php
  namespace Core;
  
  error_reporting(E_ALL);
  ini_set('display_errors', 'on');
  
  spl_autoload_register(function($class) {
    // Ihre Implementierung der Autoload-Funktion
  });
  
  $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); // So verwenden wir die Klasse View
?>

Die Code-Struktur der Klasse View wird folgenden Aufbau haben:

/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) {
      
    }
  }
?>