目前我在http://example.com/topic.php?id=14,我想http://example.com/topic.php?id=14&like=like通过不定义当前网址来建立链接.喜欢<a href="&like=like">Like</a>.然而,这最后一个给我看http://example.com/&like=like
Mar*_*ace 15
function currentUrl() {
$protocol = strpos(strtolower($_SERVER['SERVER_PROTOCOL']),'https') === FALSE ? 'http' : 'https';
$host = $_SERVER['HTTP_HOST'];
$script = $_SERVER['SCRIPT_NAME'];
$params = $_SERVER['QUERY_STRING'];
return $protocol . '://' . $host . $script . '?' . $params;
}
Run Code Online (Sandbox Code Playgroud)
然后用类似的东西添加你的价值;
echo currentUrl().'&value=myVal';
Run Code Online (Sandbox Code Playgroud)
Que*_*tin 12
在向其添加其他参数的同时,无法编写保留现有查询字符串的相对URI.
你必须:
topic.php?id=14&like=like
Run Code Online (Sandbox Code Playgroud)
我知道我已经迟到了,但你可以?id=14&like=like通过使用http构建查询来做到如下:
http_build_query(array_merge($_GET, array("like"=>"like")))
Run Code Online (Sandbox Code Playgroud)
无论你有什么GET参数都会在那里,如果like是一个参数,它将被覆盖,否则它将包含在最后.
如果您想在 JavaScript 中添加 URL 参数,请参阅此答案。按照那里的建议,您可以URLSeachParams在现代浏览器中使用API,如下所示:
<script>
function addUrlParameter(name, value) {
var searchParams = new URLSearchParams(window.location.search)
searchParams.set(name, value)
window.location.search = searchParams.toString()
}
</script>
<body>
...
<a onclick="addUrlParameter('like', 'like')">Like this page</a>
...
</body>
Run Code Online (Sandbox Code Playgroud)
它并不优雅,但可以作为单行<a>元素来实现
<a href onclick="event.preventDefault(); location+='&like=like'">Like</a>Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
155382 次 |
| 最近记录: |