php 中获取当前 url 的三种方法:使用 $_server[‘request_uri’]。使用 getallheaders()。使用 parse_url()。
如何在 PHP 中获取当前 URL
在 PHP 中获取当前 URL 有多种方法。最常用的方法如下:
1. 使用 $_SERVER[‘REQUEST_URI’]
$_SERVER[‘REQUEST_URI’] 变量包含当前请求的完整 URI,包括查询字符串。
$url = $_SERVER['REQUEST_URI'];
2. 使用 getallheaders()
getallheaders() 函数返回一个包含所有请求标头的数组。其中’Host’标头包含当前 URL 的主机和端口。
$headers = getallheaders(); $url = "http://" . $headers['Host'] . $_SERVER['REQUEST_URI'];
3. 使用 parse_url()
parse_url() 函数将 URL 解析为其组成部分,返回一个包含协议、主机、路径和查询字符串等信息的数组。
$url_parts = parse_url($_SERVER['REQUEST_URI']); $url = $url_parts['scheme'] . '://' . $url_parts['host'] . $url_parts['path'];
注意:
- 如果当前请求是通过 HTTPS 连接的,$_SERVER[‘REQUEST_URI’] 和 getallheaders() 方法将在 URL 中包含协议信息。如果您不需要协议,可以从 URL 中将其删除。
- parse_url() 函数不会包含查询字符串信息。如果您需要查询字符串,可以使用 $url_parts[‘query’] 检索它。