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

如何使用PHP函数获取当前页面的URL

发布时间:2023-10-26 14:50:07

要获取当前页面的URL,可以使用PHP中的$_SERVER变量和相关函数来实现。以下是一种常用的方法:

1. 使用$_SERVER['PHP_SELF']获取当前页面的文件路径。

PHP_SELF是$_SERVER中的一个元素,它包含了当前正在执行脚本的文件名。可以通过$_SERVER['PHP_SELF']来获取当前页面的文件路径。例如:$current_page = $_SERVER['PHP_SELF'];

2. 使用$_SERVER['SERVER_NAME']获取主机名。

SERVER_NAME是$_SERVER中的一个元素,它包含当前执行脚本的主机名。可以通过$_SERVER['SERVER_NAME']来获取当前页面的主机名。例如:$host = $_SERVER['SERVER_NAME'];

3. 使用$_SERVER['REQUEST_URI']获取当前页面的URI。

REQUEST_URI是$_SERVER中的一个元素,它包含了当前请求的URI。可以通过$_SERVER['REQUEST_URI']来获取当前页面的URI。例如:$uri = $_SERVER['REQUEST_URI'];

4. 使用$_SERVER['QUERY_STRING']获取当前页面的查询字符串。

QUERY_STRING是$_SERVER中的一个元素,它包含当前请求的查询字符串。可以通过$_SERVER['QUERY_STRING']来获取当前页面的查询字符串。例如:$query_string = $_SERVER['QUERY_STRING'];

5. 使用$_SERVER['HTTPS']判断是否使用了HTTPS协议。

HTTPS是$_SERVER中的一个元素,如果当前页面是通过HTTPS协议访问的,它的值为"on",否则为null。可以通过判断$_SERVER['HTTPS']的值来确定当前页面是否使用了HTTPS协议。例如:$is_https = isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on';

根据以上方法,可以编写一个函数来获取当前页面的URL:

function getCurrentURL() {
    $protocol = isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on' ? "https://" : "http://";
    $host = $_SERVER['SERVER_NAME'];
    $uri = $_SERVER['REQUEST_URI'];
    $query_string = $_SERVER['QUERY_STRING'];
    
    $url = $protocol . $host . $uri;

    if (!empty($query_string)) {
        $url .= '?' . $query_string;
    }

    return $url;
}

$current_url = getCurrentURL();
echo $current_url;

使用以上代码,即可获取到当前页面的完整URL地址,并打印输出。注意,以上方法只能用于获取当前页面的URL,如果希望获取其他页面的URL,需要根据具体情况进行相应的修改。