diff --git a/src/Annotation/Method/Route.php b/src/Annotation/Method/Route.php index a6b6388..dcdf3ea 100644 --- a/src/Annotation/Method/Route.php +++ b/src/Annotation/Method/Route.php @@ -41,9 +41,9 @@ class Route implements \Notes\Annotation { public function getRoute() : string { - return "/" . trim(isset($this->base) ? + return rtrim("/" . trim(isset($this->base) ? "/" . trim($this->base, "/") . "/" . ltrim($this->route, "/") : - "/" . ltrim($this->route, "/"), "/"); + "/" . ltrim($this->route, "/"), "/"), '/'); } } diff --git a/src/RouteFetcher.php b/src/RouteFetcher.php index 14c4328..4ebc7f6 100644 --- a/src/RouteFetcher.php +++ b/src/RouteFetcher.php @@ -80,22 +80,22 @@ class RouteFetcher { } $routeList = $objectResolver->getAnnotationListFromClassname( $this->annotations['method'] ); + foreach($routeList as $func => $routes) { + foreach($routes as $route) { + $route->base = $base; + $route->class = $class; + $route->classMethod = $func; - foreach($routeList as $func => $route) { + if (false === ($route->methods ?? false)) { + $route->methods = $methods; + } - $route->base = $base; - $route->class = $class; - $route->classMethod = $func; + if (false !== ($this->callback ?? false)) { + call_user_func_array($this->callback, [$route]); + } - if ( false === ( $route->methods ?? false ) ) { - $route->methods = $methods; + yield $route; } - - if ( false !== ( $this->callback ?? false ) ) { - call_user_func_array($this->callback, [ $route ]); - } - - yield $route; } } }