如何获取当前页面的URL减去所有获取参数(?blah = 2& blah4 = 90 ...) 我知道我可以使用$ _SERVER ['REQUEST_URI']获取完整的URL,但我想知道是否有更符合我需求的东西。
或者我应该做strpos?和substr to the arguments? (我想,$ _SERVER var会更有效 - 如果存在的话)
由于
答案 0 :(得分:5)
$_SERVER['REQUEST_URL']
有时答案很简单:)我在这里找到了解决方案:http://php.net/manual/en/reserved.variables.server.php通过CTRL + F'ing进行“查询”。
修改强>
正如matchu在评论中所说,并非所有服务器都支持REQUEST_URL。在这种情况下,我会使用更不优雅的strtok($url, '?');
。
答案 1 :(得分:0)
$_SERVER['REQUEST_URL']
应该做的伎俩...
它在评论中列出: http://php.net/manual/en/reserved.variables.server.php
不知道为什么它不在doco中?
答案 2 :(得分:0)
您可以使用parse_url function然后连接所需的部分(方案,主机,端口,用户,通行证和路径)
答案 3 :(得分:0)
你可以这样做:
$url=$_SERVER["REQUEST_SCHEME"]."://".$_SERVER["HTTP_HOST"].$_SERVER["PHP_SELF"];
答案 4 :(得分:0)
你可以使用它,非常简单:
$url = explode("?",$_SERVER[REQUEST_URI]);
$url = "http://$_SERVER[HTTP_HOST]/" . $url[0];
通过爆炸您将在$url[0]
"第一部分"并在$url[1]
所有论点中。