public static function ControllerSeeker($ctrl, $act, $param) { $controller = $ctrl; $action = $act; $parameters = $param; //Annotation parser is check for any valid annotation and return correct controller and action if it's need it; $annotationParameters = annotationParser::CheckAnnotations($controller, $action); $annotations = false; if (count($annotationParameters) > 0) { $controller = $annotationParameters["controller"]; $action = $annotationParameters["action"]; $annotations = true; } $customRouteParameters = CustomRouteController::routeChecker($controller, $action); if (!$annotations && !empty($customRouteParameters)) { $controller = $customRouteParameters["controller"]; $action = $customRouteParameters["action"]; } $controllerPath = "controllers\\defaultControllers\\" . ucfirst($controller) . "Controller"; if (file_exists($controllerPath . ".php")) { spl_autoload_register(function ($class) { if (file_exists($class . ".php")) { require_once $class . ".php"; } }); \views\View::$controllerName = $controller; \views\View::$actionName = $action; $currentController = new $controllerPath(); if (true) { \MainMenuHelper::$menuitems = array("TestK" => "TestV"); } if (method_exists($currentController, $action)) { call_user_func_array(array($currentController, $action), array($parameters)); } } else { throw new \HttpException("NOT FOUND ROUTE!"); } }
<?php MainMenuHelper::generate(); ?> <h1>INDEX OF PAGE</h1>