/** * match the requested route with one of the routes added to the routes array on the main maverick class * @param string $protocol the protocol specified in the routes, either post, get, or any * @param string $route the route string * @param string $action the action to take, usually in the form of controller->method * @param array $args an array of matched parameters to pass to the routing controller class * @return boolean */ private static function match_route($protocol, $route, $action, $args) { $maverick = \maverick\maverick::getInstance(); // return if a route has already been matched if (isset($maverick->route)) { return false; } // return if the protocols don't match if (strtolower($_SERVER['REQUEST_METHOD']) == $protocol || $protocol == 'any') { preg_match("~^{$route}\$~", $maverick->requested_route_string, $matches); // route match - assign the information back to the main maverick object if (!empty($matches)) { $maverick->controller = route::get_full_action($action, $args, $matches); } } else { return false; } }