Fixed URL::absoluteUrl when an URL contains a target and parameters is not empty

This commit is contained in:
Julien Chanséaume
2014-07-16 15:49:29 +02:00
committed by Julien Chanseaume
parent e9bfe42070
commit a1c1f1fb0e

View File

@@ -154,6 +154,7 @@ class URL
$base = $path;
$queryString = '';
$anchor = '';
if (! is_null($parameters)) {
foreach ($parameters as $name => $value) {
@@ -167,6 +168,14 @@ class URL
if ('' !== $queryString = rtrim($queryString, "&")) {
// url could contain anchor
$pos = strrpos($base, '#');
if($pos !== false) {
$anchor = substr($base, $pos);
$base = substr($base, 0, $pos);
}
$base = rtrim($base, "?&");
$sepChar = strstr($base, '?') === false ? '?' : '&';
@@ -174,7 +183,7 @@ class URL
$queryString = $sepChar . $queryString;
}
return $base . $queryString;
return $base . $queryString . $anchor;
}
/**