diff --git a/library/think/Url.php b/library/think/Url.php index 922dc929..fb9f5a79 100644 --- a/library/think/Url.php +++ b/library/think/Url.php @@ -98,7 +98,7 @@ class Url // 添加参数 if (Config::get('url_common_param')) { $vars = urldecode(http_build_query($vars)); - $url .= $suffix . $anchor . '?' . $vars; + $url .= $suffix . '?' . $vars . $anchor; } else { foreach ($vars as $var => $val) { if ('' !== trim($val)) { diff --git a/tests/thinkphp/library/think/urlTest.php b/tests/thinkphp/library/think/urlTest.php index 96fa0788..1a8e22f8 100644 --- a/tests/thinkphp/library/think/urlTest.php +++ b/tests/thinkphp/library/think/urlTest.php @@ -72,5 +72,8 @@ class urlTest extends \PHPUnit_Framework_TestCase Route::get('blog/:id', 'index/blog'); Config::set('url_html_suffix', 'shtml'); $this->assertEquals('/blog/10.shtml#detail', Url::build('/blog/10#detail')); + + Config::set('url_common_param', true); + $this->assertEquals('/blog/10.shtml?foo=bar#detail', Url::build('/blog/10#detail', "foo=bar")); } }