diff --git a/system/router.php b/system/router.php index f3d5ed3b..d341b4a3 100644 --- a/system/router.php +++ b/system/router.php @@ -34,8 +34,8 @@ public static function route($method, $uri) foreach (static::$routes as $keys => $callback) { - // Only check routes that have multiple URIs or wildcards. All other routes would have - // been caught by a literal match. + // Only check routes that have multiple URIs or wildcards. All other routes would + // have been caught by a literal match. if (strpos($keys, '(') !== false or strpos($keys, ',') !== false ) { foreach (explode(', ', $keys) as $key) @@ -44,6 +44,9 @@ public static function route($method, $uri) if (preg_match('#^'.$key.'$#', $method.' '.$uri)) { + $uri = trim($uri, '/'); + $key = trim(substr($key, strlen($method.' ')), '/'); + return Request::$route = new Route($keys, $callback, static::parameters(explode('/', $uri), explode('/', $key))); } }