1

我想回显确切的网址:http://domain.com/mystuff.html#123456

但它只打印http://domain.com/mystuff.html如何包含#123456?所以变成http://domain.com/mystuff.html#123456

到目前为止我的代码

$urladdress =  "http://".$_SERVER['HTTP_HOST'].$_SERVER['SCRIPT_NAME']."?".$_SERVER['QUERY_STRING'];
4

3 回答 3

4

你不能。片段标识符完全由客户端处理,因此浏览器不会将其发送到服务器。

(您最接近的可能是(在页面加载后)使用 JavaScript 在另一个请求中将其发送到服务器。)

于 2013-08-05T07:07:56.987 回答
0

你无法使用 php 来获取它,你可以通过 javascritp 来完成它。使用这个测试脚本来检查你的结果。

<script>
alert(document.URL);

    var urlDetail = document.URL;//you can use this variable to print in your web page.
</script>
于 2013-08-05T07:19:14.050 回答
-1

找到了答案:

<a href="'.$urladdress.'#'.parse_url("http://domain.com?page.html#123456",PHP_URL_FRAGMENT).'">text</a>
于 2013-08-05T08:05:18.853 回答