Я пытаюсь перенаправить от одной страницы до другого при сохранении параметров.
например, если у меня есть страница page.php? param1=1¶m2=2, что самый легкий путь состоит в том, чтобы извлечь "param1=1¶m2=2"?
Используйте $ _ SERVER ['QUERY_STRING']
для доступа ко всему, что находится после вопросительного знака.
Итак, если у вас есть URL:
http://www.sample.com/page.php?param1=1¶m2=2
, то это:
$url = "http://www.sample.com/page2.php?".$_SERVER['QUERY_STRING'];
echo $url;
вернет:
http://www.sample.com/page2.php?param1=1¶m2=2
я бы сделал
$querystring = '?'
foreach($_GET as $k=>$v) {
$querystring .= $k.'='.$v.'&';
}
$url .= substr($querystring, 0, -1);
, где $ url
уже содержит все до?
, вы также можете использовать $ _ SERVER ['QUERY_STRING']
, но в соответствии с руководством по PHP :
$ _ SERVER - это массив, содержащий такую информацию, как заголовки, пути и расположение скриптов. Записи в этом массиве создаются веб-сервером. * Нет гарантии, что каждый веб-сервер предоставит что-либо из этого; серверы могут опускать некоторые или предоставлять другие, не перечисленные здесь. *