From bb052625af1d51c10521a2a92539db390947b360 Mon Sep 17 00:00:00 2001 From: Phil Date: Thu, 1 Jan 2015 20:17:48 +0000 Subject: [PATCH] Made sure not to iterate over StaticRoutes again because the key they map to is a specific child Handler --- src/pjdietz/WellRESTed/Router.php | 21 ++++++++++++--------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/src/pjdietz/WellRESTed/Router.php b/src/pjdietz/WellRESTed/Router.php index e5786dc..62c7795 100644 --- a/src/pjdietz/WellRESTed/Router.php +++ b/src/pjdietz/WellRESTed/Router.php @@ -49,16 +49,19 @@ class Router implements HandlerInterface $handler = new $this->routes[$path](); $response = $handler->getResponse($request, $args); } else { - foreach ($this->routes as $route) { - /** @var HandlerInterface $route */ - try { - $response = $route->getResponse($request, $args); - } catch (HttpException $e) { - $response = new Response(); - $response->setStatusCode($e->getCode()); - $response->setBody($e->getMessage()); + foreach ($this->routes as $path => $route) { + // Only take elements that are not $path => $handler mapped. + if (is_int($path)) { + /** @var HandlerInterface $route */ + try { + $response = $route->getResponse($request, $args); + } catch (HttpException $e) { + $response = new Response(); + $response->setStatusCode($e->getCode()); + $response->setBody($e->getMessage()); + } + if ($response) break; } - if ($response) break; } } if ($response) {