/** * Parse request URL into components and return a corresponding MVC request object * * @return midgardmvc_core_helpers_request */ public function get_request() { $request = new midgardmvc_core_helpers_request(); $request->set_root_page($this->_root_page); $request->set_method($_SERVER['REQUEST_METHOD']); // Parse URL into components (Mjolnir doesn't do this for us) $url_components = parse_url("http://{$_SERVER['HTTP_HOST']}{$_SERVER['REQUEST_URI']}"); // Handle GET parameters if (!empty($url_components['query'])) { $get_parameters = array(); parse_str($url_components['query'], $get_parameters); $request->set_query($get_parameters); } $request->resolve_page($url_components['path']); return $request; }
/** * Parse request URL into components and return a corresponding MVC request object * * @return midgardmvc_core_helpers_request */ public function get_request() { $request = new midgardmvc_core_helpers_request(); $request->set_root_page(new midgardmvc_core_node($_MIDGARD['root'])); $request->set_page(new midgardmvc_core_node($_MIDGARD['page'])); $arg_string = substr($_MIDGARD['uri'], strlen($_MIDGARD['self'])); $request_argv = array(); if ($arg_string) { $argv = explode('/', $arg_string); foreach ($argv as $arg) { if (empty($arg)) { continue; } $request_argv[] = $arg; } } $request->set_argv($request_argv); $request->set_method($_SERVER['REQUEST_METHOD']); $request->set_prefix($_MIDGARD['self']); if (isset($_GET)) { $request->set_query($_GET); } return $request; }