Added: MVC structure, Router, Views and Controllers for home page and login/signup

This commit is contained in:
2024-12-25 23:02:09 +01:00
parent 7b4b349816
commit 3144078860
17 changed files with 167 additions and 0 deletions

28
core/Router.php Normal file
View File

@ -0,0 +1,28 @@
<?php
class Router {
private $routes = [];
public function add($route, $action) {
$this->routes[$route] = $action;
}
public function dispatch() {
$uri = $_SERVER['REQUEST_URI'];
$uri = parse_url($uri, PHP_URL_PATH);
if (array_key_exists($uri, $this->routes)) {
$action = $this->routes[$uri];
list($controllerName, $methodName) = explode('@', $action);
require_once controllers . "{$controllerName}.php";
$controller = new $controllerName();
$controller->$methodName();
} else {
http_response_code(404);
$view = new View();
$view->render('errors/404');
}
}
}