但是当我得到一个url params
$url = $_GET["url"];
echo $url;
回音值 http://www.examenple.com/nice=url-get.aspx?n=value1
如何获得完整的网址参数
答案 0 :(得分:0)
当服务器解析请求URL以检测GET参数时,它会将URL拆分为每个&字符:
url=http://www.examenple.com/nice=url-get.aspx?n=value1
&
p=value2
&
params3=value3
因此$_GET
将有3个成员,url,p和params3。
为避免这种情况,您需要更换每个&其他人物。这称为URL编码。在PHP中,有一个函数:urlencode():
$page = "http://www.examenple.com/nice=url-get.aspx?n=value1&p=value2¶ms3=value3";
echo "http://localhost/example?url=" . urlencode($page);
如果您无法访问来源和输入网址,但是您可以确定只有一个,url参数将传递到您的网页,您可以尝试这样做:
$url = $_GET["url"];
foreach ($_GET as $key => $value) {
if ($key == "url") continue;
$url .= "&" . $key . "=" $value;
}