From b87ffe00b00d9d473db15ebd251553b17a5eff94 Mon Sep 17 00:00:00 2001 From: filippo.bertilotti <filippobertilotti@gmail.com> Date: Mon, 20 May 2024 09:46:24 +0200 Subject: [PATCH] inizializzazione .env e classe apposita che la gestisce (parte 110) --- index.php | 36 +++++++++++++++++++++++------------- 1 files changed, 23 insertions(+), 13 deletions(-) diff --git a/index.php b/index.php index 32bb1da..d97f727 100644 --- a/index.php +++ b/index.php @@ -1,22 +1,32 @@ <?php -require "src/router.php"; + +declare(strict_types= 1); + +spl_autoload_register(function ($class) { + require "src/". str_replace("\\", "/", $class). ".php"; + }); + +$dotenv = new Framework\Dotenv; +$dotenv->load(".env"); +print_r($_ENV); + +set_error_handler("Framework\ErrorHandler::handleError"); + +set_exception_handler("Framework\ErrorHandler::handleException"); + $path = parse_url($_SERVER["REQUEST_URI"], PHP_URL_PATH); +if ($path === false) { + throw new UnexpectedValueException("Malformed URL: {$_SERVER["REQUEST_URI"]}"); +} + $segments = explode("/", $path); -$router = new Router; -$router->add("/home/index", ["controller" => "home", "action" => "index"]); -$router->add("/products", ["controller" => "products", "action" => "index"]); -$router->add("/", ["controller" => "home", "action" => "index"]); +$router = require "config/routes.php"; -$params = $router->match($path); +$container = require "config/services.php"; -$controller = $params["controller"]; -$action = $params["action"]; +$dispatcher = new Framework\Dispatcher($router, $container); -require "src/controllers/$controller.php"; - -$controller_object = new $controller; - -$controller_object->$action(); +$dispatcher->handle($path); \ No newline at end of file -- Gitblit v1.8.0