我们说当前的网址是www.example.com/example.php?var=test#1
$_SERVER['QUERY_STRING'];
应该返回
VAR =试验#1
但它只会返回
测试
每次在URL中插入“#”符号时都会发生这种情况。
我该如何解决?我真的需要获取当前的查询字符串,但我不能使用$ _GET(请不要问为什么它真的太长了解释)。 我也无法控制URL,我无法控制url字符串或在它到达我的服务器之前对其进行编码。
编辑:与$ _SERVER ['REQUEST_URI']相同的问题;
答案 0 :(得分:1)
如果你确实需要知道哈希是什么,你将不得不使用document.location.hash
JavaScript属性,其中包含哈希的内容....除此之外,没有办法得到用PHP散列,因为它没有传递给服务器
答案 1 :(得分:0)
URL中的#
符号表示指向命名锚点的链接,不属于查询字符串。要作为查询数据的一部分可靠地传递,它应编码为%23。