欢迎访问宙启技术站
智能推送

PHP函数-获取当前URL地址

发布时间:2023-07-02 16:00:39

在 PHP 中,可以使用 $_SERVER 超全局变量来获取当前 URL 地址。$_SERVER 是一个包含了 HTTP 服务器的头信息、路径信息和脚本位置等信息的数组。

以下是一些常见的 $_SERVER 相关的数组元素可以用来获取当前 URL 地址的方式:

1. $_SERVER['HTTP_HOST']:返回当前主机名(域名)和端口号(如果有)。例如,如果当前 URL 是 https://www.example.com:8080/mypage.php,则 $_SERVER['HTTP_HOST'] 的值将是 "www.example.com:8080"

2. $_SERVER['REQUEST_URI']:返回当前请求的 URI(包括查询字符串)。例如,如果当前 URL 是 https://www.example.com/mypage.php?id=123,则 $_SERVER['REQUEST_URI'] 的值将是 "/mypage.php?id=123"

3. $_SERVER['SCRIPT_NAME']:返回当前脚本的路径。例如,如果当前 URL 是 https://www.example.com/mypage.php,则 $_SERVER['SCRIPT_NAME'] 的值将是 "/mypage.php"

4. $_SERVER['PHP_SELF']:返回当前正在执行的脚本的文件名(包括相对于文档根目录的路径)。例如,如果当前 URL 是 https://www.example.com/index.php/mypage.php,则 $_SERVER['PHP_SELF'] 的值将是 "/index.php/mypage.php"

根据上述的 $_SERVER 相关的数组元素,我们可以使用以下代码来获取当前 URL 地址:

$currentURL = "http://" . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];

在上述代码中,我们将主机名(包括端口号)和请求的 URI 组合在一起,得到了完整的 URL 地址。

需要注意的是,$_SERVER['HTTP_HOST']$_SERVER['REQUEST_URI'] 中的值是由客户端提供的,所以它们可能存在潜在的安全风险。在使用这些值之前,应该进行安全过滤或验证来确保网站的安全性。

此外,也可以考虑使用 URL 相关的 PHP 函数来获取当前 URL 地址,例如 parse_url() 函数用于解析 URL,http_build_url() 函数用于构建 URL。

总的来说,获取当前 URL 地址的方法可能因具体情况而有所不同,上述方法仅提供了一种常见的方式。在实际开发中,根据具体需求和应用场景选择最适合的方法。