我想在一个变量中传递Url,此变量包含带值的url
例如:
$addr = "http://".$_SERVER['SERVER_NAME']."/".$_SERVER['REQUEST_URI']."";
echo $addr;
这一步将给我http://localhost/index.php?page=3&var1=A&var2=B
当我将这个$ addr var传递给另一个页面并回显它时,我只得到`http://localhost/index.php?page=3
它看起来像什么时候有&签署它消失了。
我该怎么办?有办法传递这个变量并回显整个var?
感谢。
答案 0 :(得分:5)
您需要urlencode
他们。快速Google搜索告诉我,只需将&
替换为%26
即可。
答案 1 :(得分:0)
尝试使用$_SERVER['QUERY_STRING']
至少获得问号后的所有值。
答案 2 :(得分:0)
您可以使用$_SERVER['HTTP_REFERER']
(但要小心,因为它不是100%可靠)。
另一种选择是将其添加到URL。
$addr = "http://".$_SERVER['SERVER_NAME']."/".$_SERVER['REQUEST_URI']."";
$addr = urlencode($addr);
$yourUrl = 'http://wwww.google.com?var1=4'; // some url
header("Location:{$yourUrl}&from={$addr}");
就是这样。