我正在尝试建立包含当前_GET变量的链接。
示例链接:<a href="?page=2">Page 2</a>
当前网址为:http://example.com/test.php?id=2&a=1
因此,如果有人点击第2页的链接,则会将他们带到: http://example.com/test.php?id=2&a=1&page=2
目前,如果他们点击链接,则会将他们带到: http://example.com/test.php?page=2
如您所见,我需要一种方法来获取url中的当前_GET变量并将它们添加到链接中。建议?
答案 0 :(得分:13)
$new_query_string = http_build_query(array_merge($_GET,array('page' => 2)));
答案 1 :(得分:9)
超全局条目$_SERVER['QUERY_STRING']
中包含查询字符串。您可以将其附加到任何其他链接。
更新:使用http_build_query在此页面上的备用响应更好,因为它允许您向查询字符串添加新变量,而无需担心无关等等。但我会在这里留下这个,因为我想提一下,你可以访问当前地址中的文字查询字符串。
答案 2 :(得分:0)
利用@extract($_GET)
。所以你可以直接作为变量访问它们。
答案 3 :(得分:0)
试试这可能对你有帮助......
function get_all_get()
{
$output = "?";
$firstRun = true;
foreach($_GET as $key=>$val) {
if($key != $parameter) {
if(!$firstRun) {
$output .= "&";
} else {
$firstRun = false;
}
$output .= $key."=".$val;
}
}
return $output;
}
答案 4 :(得分:0)
至于上面的问题如何在网址中包含php文件的名称,使用你的Common Sense的完美方法并为我添加一个问号:
echo "<a href='?".$url."'>link</a>"