Puna me rrugët në MVC framework-un tuaj

Ju tashmë e dini se në skedarin /project/config/routes.php vendosen rrugët që tregojnë korrespondencën midis URL-ve dhe kontrolluesve me veprimet. Rrugët përfaqësojnë objekte të klasës Route. Le ta krijojmë këtë klasë në skedarin /core/Route.php:

/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;
    }
  }
?>

Siç e shihni, në këtë klasë vetitë janë të destinuara vetëm për lexim, që arrihet duke përdorur magji.

Hidhni një sy tani në skedarin me rrugët. Ju mund të shihni se aty ndodhet një varg, i cili kthehet përmes return. Kjo do të thotë, që nëse e lidhim një skedar të tillë përmes require, rezultati i lidhjes mund të shkruhet në një ndryshore dhe në këtë ndryshore do të gjendet vargu ynë:

index.php<?php
  namespace Core;
  
  error_reporting(E_ALL);
  ini_set('display_errors', 'on');
  
  spl_autoload_register(function($class) {
    // implementimi juaj i autoload
  });
  
  // Lexojmë vargun nga skedari me rrugët në ndryshore:
  $routes = require $_SERVER['DOCUMENT_ROOT'] . '/project/config/routes.php';
?>
Задание 1

Kopjoni kodin e klasës time Route dhe vendoseni atë në skedarin /core/Route.php.

Задание 2

Merrni vargun me rrugët në skedarin index.php.