createController($request); $action = $this->createAction($request); $controller->executeAction($action); } catch (Exception $e) { $this->error($e); } } private function createController($request) { $controller = "Default"; if ($request->existParameter('controller')) { $controller = $request->getParameter('controller'); $controller = ucfirst(strtolower($controller)); } $classController = "Controller" . $controller; $fileController = $GLOBALS['app_path']."Controller/" . $classController . ".php"; if (file_exists($fileController)) { require($fileController); $controller = new $classController(); $controller->setRequest($request); return $controller; } else { throw new Exception("Fichier '$fileController' introuvable"); return null; } } private function createAction(Request $request) { $action = "index"; if ($request->existParameter('action')) { $action = $request->getParameter('action'); } return $action; } private function error($exception) { $view = new View('error'); $view->generate(array('msgError' => $exception->getMessage())); } }