diff options
author | Igor Scheller <igor.scheller@igorshp.de> | 2018-09-04 18:35:13 +0200 |
---|---|---|
committer | Igor Scheller <igor.scheller@igorshp.de> | 2018-09-04 21:13:28 +0200 |
commit | b52444af8a289e089d1239657cdf6ff06b21b29d (patch) | |
tree | c2754b3049a50ad6743841a609ab0574f241720d /src/Http/UrlGenerator.php | |
parent | b320fc779063ee80b8f0ba505cb323287ccccbf5 (diff) | |
parent | a1bc763a16ee8be109de5c9053fbc5eded53824e (diff) |
Merge remote-tracking branch 'MyIgel/routing'
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; + } +} |