Returns part of the request URL that is after the question mark.
public getQueryString ( ) : string | ||
return | string | part of the request URL that is after the question mark |
/** * Redirect to the current URL with given language code applied * * @param string $language the language code to add. Can also be empty to not add any language code. */ protected function redirectToLanguage($language) { // Examples: // 1) /baseurl/index.php/some/page?q=foo // 2) /baseurl/some/page?q=foo // 3) // 4) /some/page?q=foo if ($this->showScriptName) { // 1) /baseurl/index.php // 2) /baseurl/index.php // 3) /index.php // 4) /index.php $redirectUrl = $this->_request->getScriptUrl(); } else { // 1) /baseurl // 2) /baseurl // 3) // 4) $redirectUrl = $this->_request->getBaseUrl(); } if ($language) { $redirectUrl .= '/' . $language; } // 1) some/page // 2) some/page // 3) // 4) some/page $pathInfo = $this->_request->getPathInfo(); if ($pathInfo) { $redirectUrl .= '/' . $pathInfo; } if ($redirectUrl === '') { $redirectUrl = '/'; } // 1) q=foo // 2) q=foo // 3) // 4) q=foo $queryString = $this->_request->getQueryString(); if ($queryString) { $redirectUrl .= '?' . $queryString; } Yii::$app->getResponse()->redirect($redirectUrl); if (YII_ENV_TEST) { throw new \yii\base\Exception(\yii\helpers\Url::to($redirectUrl)); } else { Yii::$app->end(); } }