Utilizando o roteador no seu próprio framework MVC

Vamos recordar o conteúdo atual do arquivo index.php:

index.php<?php
  namespace Core;
  
  error_reporting(E_ALL);
  ini_set('display_errors', 'on');
  
  spl_autoload_register(function($class) {
    // sua implementação de autocarregamento
  });
  
  $routes = require $_SERVER['DOCUMENT_ROOT'] . '/project/config/routes.php';
?>

Suponha que agora, mais adiante em index.php, nós desejemos usar nosso roteador da seguinte maneira:

index.php<?php
  $router = new Router();
  $track  = $router->getTrack($routes, $_SERVER['REQUEST_URI']);
?>

Pode ser reescrito de forma mais compacta:

index.php<?php
  $track = ( new Router ) -> getTrack($routes, $_SERVER['REQUEST_URI']);
?>