diff options
Diffstat (limited to 'src/Http/UrlGenerator.php')
-rw-r--r-- | src/Http/UrlGenerator.php | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/src/Http/UrlGenerator.php b/src/Http/UrlGenerator.php new file mode 100644 index 00000000..7ced769e --- /dev/null +++ b/src/Http/UrlGenerator.php @@ -0,0 +1,30 @@ +<?php + +namespace Engelsystem\Http; + +/** + * Provides urls when rewriting on the webserver is enabled. (default) + * + * The urls have the form <app url>/<path>?<parameters> + */ +class UrlGenerator implements UrlGeneratorInterface +{ + /** + * @param string $path + * @param array $parameters + * @return string url in the form [app url]/[path]?[parameters] + */ + public function to($path, $parameters = []) + { + $path = '/' . ltrim($path, '/'); + $request = app('request'); + $uri = $request->getUriForPath($path); + + if (!empty($parameters) && is_array($parameters)) { + $parameters = http_build_query($parameters); + $uri .= '?' . $parameters; + } + + return $uri; + } +} |