Add toUri function to router

This commit is contained in:
Tim 2023-08-15 03:17:04 +02:00
parent c80dcd2860
commit de5ff3a2b9
2 changed files with 12 additions and 1 deletions

View File

@ -47,6 +47,17 @@ class GenericRouter implements RouterInterface
throw new RouteNotFoundException($request);
}
public function toUri(string $controller, string $method): string
{
foreach ($this->config->getRoutes() as $route) {
if ($route->getController() === $controller && $route->getMethod() === $method) {
return $route->getRoute()->path;
}
}
throw new \RuntimeException("Route for $controller::$method not found");
}
private function resolveParams(string $routeUri, string $requestUri): ?array
{
if ($routeUri === $requestUri) {

View File

@ -24,7 +24,7 @@ class BaseView implements ViewInterface
include $path;
$output = ob_get_clean();
if ($this->extends) {
$output = (new BaseView($this->extends, $this->data + ['slot' => $output]))->render($config);
return (new BaseView($this->extends, $this->data + ['slot' => $output]))->render($config);
}
return $output;