Útvonalak kezelése saját MVC keretrendszerben

Már tudod, hogy a /project/config/routes.php fájlban helyezkednek el az útvonalak, amelyek az URL-ek és a vezérlők és műveletek közötti megfeleléseket határozzák meg. Az útvonalak a Route osztály objektumai. Készítsük el ezt az osztályt a /core/Route.php fájlban:

/core/Route.php<?php
  namespace Core;
  
  class Route
  {
    private $path;
    private $controller;
    private $action;
    
    public function __construct($path, $controller, $action)
    {
      $this->path = $path;
      $this->controller = $controller;
      $this->action = $action;
    }
    
    public function __get($property)
    {
      return $this->$property;
    }
  }
?>

Amint látod, ebben az osztályban a tulajdonságok csak olvashatók, amit varázslat alkalmazásával érünk el.

Most nézz bele az útvonalak fájljába. Láthatod, hogy van egy tömb, amelyet a return ad vissza. Ez azt jelenti, hogy ha egy ilyen fájlt a require utasítással include-olunk, akkor a behívás eredménye elmenthető egy változóba, és ebben a változóban lesz a mi tömbünk:

index.php<?php
  namespace Core;
  
  error_reporting(E_ALL);
  ini_set('display_errors', 'on');
  
  spl_autoload_register(function($class) {
    // az automatikus betöltés implementációja
  });
  
  // Beolvassuk az útvonalak tömbjét a fájlból egy változóba:
  $routes = require $_SERVER['DOCUMENT_ROOT'] . '/project/config/routes.php';
?>
Задание 1

Másold a Route osztály kódomat és helyezd el a /core/Route.php fájlban.

Задание 2

Szerezd meg az útvonalak tömbjét a index.php fájlban.