<?php 
 
define('ROOT_DIR', realpath(__DIR__ . '/../')); 
 
require_once __DIR__.'/../vendor/autoload.php'; 
 
use Symfony\Component\HttpFoundation\Request; 
use Symfony\Component\HttpFoundation\Response; 
use Symfony\Component\Routing; 
use Symfony\Component\HttpKernel; 
use Symfony\Component\HttpKernel\Controller\ArgumentResolver; 
use Symfony\Component\HttpKernel\Controller\ControllerResolver; 
 
function render_template(Request $request) 
{ 
    extract($request->attributes->all(), EXTR_SKIP); 
    ob_start(); 
    include sprintf(__DIR__.'/../src/pages/%s.php', $_route); 
 
    return new Response(ob_get_clean()); 
} 
 
 
$dotenv = new Dotenv\Dotenv(ROOT_DIR); 
$dotenv->load(); 
 
$request = Request::createFromGlobals(); 
$routes = include __DIR__.'/../src/routes.php'; 
 
$context = new Routing\RequestContext(); 
$matcher = new Routing\Matcher\UrlMatcher($routes, $context); 
 
$controllerResolver = new ControllerResolver(); 
$argumentResolver = new ArgumentResolver(); 
 
$framework = new Simplex\Framework($matcher, $controllerResolver, $argumentResolver); 
$response = $framework->handle($request); 
 
$response->send();
 
 |