在php中使用$ _GET []时,会搜索变量,例如?id = value
有没有办法调用#value?
答案 0 :(得分:8)
不,因为网址的哈希部分只是客户端,不会发送到服务器。
当您在浏览器的URL文本框中输入http://server.com/dir/file.php?a=1#something
等URL时,浏览器会打开与server.com
的连接,然后发出HTTP命令GET /dir/file.php?a=1 HTTP/1.1
。这是发送到服务器的唯一数据。
因此,服务器永远不会获得#something
部分,这意味着服务器端没有脚本可以编写来读取该值。
此处解释的类似问题:How to get Url Hash (#) from server side
答案 1 :(得分:0)
我已经能够通过javascript获取片段并发送带有片段的ajax请求作为$ _GET内容来解决这个问题。
答案 2 :(得分:0)
在不知道你的整个情况的情况下,我可能会偏离轨道,但是有可能通过一个简单的GET类型的xmlhttprequest将#something发送到服务器。
答案 3 :(得分:-4)
是的,有办法。我想你想做的是:
$arValues = array_values($_GET);
// whatever else you want to do with the values