<?php
$router = new AltoRouter();
$router->setBasePath($base_path);
@require_once 'routes/web.php';
$match = $router->match();
if( is_array($match)) { // && is_callable( $match['target'] ) ) {
// Load vendor after route confirmation
@require App . 'config/config.php';
@require_once App . 'config/database.php';
// Get controller and action from router url
list( $controller, $action ) = explode( '@', $match['target'] );
//App\Controllers\DemoController;
$controller = "App\Controllers".'\\'.$controller;
$controller = new $controller();
if(method_exists($controller,$action)) {
if(!empty($match['params'])){
call_user_func_array([$controller,$action],$match['params']);
}
else {
$controller->{$action}();
}
exit();
}
}
// no route was matched or method missing
$errors = [
//'title' => 'URL not found.',
//'message' => 'Please go back and try again.'
];
return view('errors/404',$errors,false);
|