⊗ppMVDFmRt 24 of 35 menu

Arbete med routes i ditt eget MVC-ramverk

Du vet redan att i filen /project/config/routes.php placeras routes som anger överensstämmelse mellan URL och kontrollerare med åtgärder. Routes är objekt av klassen Route. Låt oss skapa den här klassen i filen /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; } } ?>

Som du kan se är egenskaperna i denna klass avsedda endast för läsning, vilket uppnås genom användning av magi.

Titta nu i filen med routes. Du kan se att det finns en array där som returneras via return. Det betyder att om en sådan fil inkluderas via require, så kan resultatet av inkluderingen skrivas till en variabel och i denna variabel kommer vår array att finnas:

<?php namespace Core; error_reporting(E_ALL); ini_set('display_errors', 'on'); spl_autoload_register(function($class) { // din implementation av autoload }); // Läser arrayen från filen med routes in i en variabel: $routes = require $_SERVER['DOCUMENT_ROOT'] . '/project/config/routes.php'; ?>

Kopiera koden för min klass Route och placera den i filen /core/Route.php.

Skaffa arrayen med routes i filen index.php.

uzcsswhiid