Kelas View dalam Framework MVC Sendiri

Sekarang kita akan membuat kelas View, yang akan menangani presentasi data. Ia akan menerima objek dari kelas Page sebagai parameter, dan mengembalikan kode HTML halaman yang sudah jadi sebagai hasilnya, yang dapat ditampilkan di layar.

Mari kita lihat bagaimana kita akan menggunakan kelas View di file index.php:

index.php<?php
  namespace Core;
  
  error_reporting(E_ALL);
  ini_set('display_errors', 'on');
  
  spl_autoload_register(function($class) {
    // implementasi autoloading Anda
  });
  
  $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); // beginilah cara kita menggunakan kelas View
?>

Struktur kode untuk kelas View akan seperti berikut:

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