php怎么获得当前页面的url

不及物动词 其他 110

回复

共3条回复 我来回复
  • 不及物动词的头像
    不及物动词
    这个人很懒,什么都没有留下~
    评论

    要获得当前页面的URL,可以使用PHP中的`$_SERVER`全局变量。

    `$_SERVER[‘PHP_SELF’]`返回当前脚本的文件名,包括路径信息。

    `$_SERVER[‘SERVER_NAME’]`返回当前运行脚本所在的服务器主机名。

    `$_SERVER[‘SERVER_PORT’]`返回服务器正在使用的端口。

    `$_SERVER[‘REQUEST_URI’]`返回URL的路径部分。

    通过结合这些变量,可以获得当前页面的完整URL。下面是一个示例代码:

    “`php
    $protocol = isset($_SERVER[‘HTTPS’]) && $_SERVER[‘HTTPS’] === ‘on’ ? “https” : “http”;
    $host = $_SERVER[‘SERVER_NAME’];
    $port = $_SERVER[‘SERVER_PORT’];
    $path = $_SERVER[‘REQUEST_URI’];

    $currentUrl = $protocol . “://” . $host . ($port != 80 && $port != 443 ? “:” . $port : “”) . $path;

    echo “当前页面的URL是:” . $currentUrl;
    “`

    通过以上代码,就可以获得当前页面的URL。注意,如果网站使用了SSL证书,即通过HTTPS连接,需要根据`$_SERVER[‘HTTPS’]`来确定协议类型。而使用`$_SERVER[‘SERVER_PORT’]`可以避免在默认端口(80或443)时显示冗余的端口信息。最后通过拼接各个部分就可以形成完整的URL。

    希望以上内容对您有帮助!

    2年前 0条评论
  • worktile的头像
    worktile
    Worktile官方账号
    评论

    在PHP中,您可以使用`$_SERVER[‘REQUEST_URI’]`来获得当前页面的URL。下面是一些关于如何获取当前页面的URL的常见方法:

    1. 使用`$_SERVER[‘REQUEST_URI’]`:
    “`php
    $url = $_SERVER[‘REQUEST_URI’];
    echo $url;
    “`
    这将返回当前URL的路径和查询字符串,例如`/example.php?param1=value1&param2=value2`。

    2. 使用`$_SERVER[‘PHP_SELF’]`和`$_SERVER[‘QUERY_STRING’]`:
    “`php
    $url = $_SERVER[‘PHP_SELF’] . ‘?’ . $_SERVER[‘QUERY_STRING’];
    echo $url;
    “`
    这将返回当前URL的路径和查询字符串,例如`/example.php?param1=value1&param2=value2`。

    3. 使用`$_SERVER[‘HTTP_HOST’]`和`$_SERVER[‘REQUEST_URI’]`:
    “`php
    $url = ‘http://’ . $_SERVER[‘HTTP_HOST’] . $_SERVER[‘REQUEST_URI’];
    echo $url;
    “`
    这将返回完整的URL,包括协议和域名,例如`http://example.com/example.php?param1=value1&param2=value2`。

    4. 使用`$_SERVER[‘HTTPS’]`来检查是否使用了HTTPS协议,然后将其与上述方法中的合并:
    “`php
    $protocol = ($_SERVER[‘HTTPS’] && $_SERVER[‘HTTPS’] != “off”) ? “https” : “http”;
    $url = $protocol . ‘://’ . $_SERVER[‘HTTP_HOST’] . $_SERVER[‘REQUEST_URI’];
    echo $url;
    “`
    这将返回完整的URL,包括协议和域名,并且如果使用了HTTPS协议,URL将以`https://`开头。

    5. 使用`$_SERVER[‘SCRIPT_NAME’]`和`$_SERVER[‘QUERY_STRING’]`:
    “`php
    $url = $_SERVER[‘SCRIPT_NAME’] . ‘?’ . $_SERVER[‘QUERY_STRING’];
    echo $url;
    “`
    这将返回当前脚本的路径和查询字符串,例如`/example.php?param1=value1&param2=value2`。

    通过上述方法之一,您可以获取当前页面的URL。根据您的需求,选择最适合您的方法。

    2年前 0条评论
  • fiy的头像
    fiy
    Worktile&PingCode市场小伙伴
    评论

    在PHP中,可以通过 `$_SERVER` 超全局变量来获取当前页面的URL。具体的操作步骤如下:

    1. 使用 `$_SERVER[‘PHP_SELF’]`
    可以使用 `$_SERVER[‘PHP_SELF’]` 获取当前页面的文件路径,不包含域名和协议部分。例如,如果当前页面的 URL 是 `http://example.com/test.php`,那么 `$_SERVER[‘PHP_SELF’]` 将返回 `/test.php`。

    2. 使用 `$_SERVER[‘REQUEST_URI’]`
    可以使用 `$_SERVER[‘REQUEST_URI’]` 来获取包含域名和端口的完整 URL。例如,如果当前页面的 URL 是 `http://example.com/test.php?param=value`,那么 `$_SERVER[‘REQUEST_URI’]` 将返回 `/test.php?param=value`。

    3. 使用 `$_SERVER[‘HTTP_HOST’]`
    可以使用 `$_SERVER[‘HTTP_HOST’]` 来获取当前页面的域名和端口信息。例如,如果当前页面的 URL 是 `http://example.com/test.php`,那么 `$_SERVER[‘HTTP_HOST’]` 将返回 `example.com`。

    4. 使用 `$_SERVER[‘HTTPS’]`
    可以使用 `$_SERVER[‘HTTPS’]` 来判断当前页面是否通过 HTTPS 协议来访问。如果 `$_SERVER[‘HTTPS’]` 的值为 `’on’`,则表示通过 HTTPS 访问;如果值为空,则表示通过 HTTP 访问。

    综合使用以上变量,可以拼接出完整的 URL。下面是一个示例代码,可以根据需求来更改和使用:

    “`php
    $protocol = isset($_SERVER[‘HTTPS’]) && $_SERVER[‘HTTPS’] === ‘on’ ? “https” : “http”;
    $hostname = $_SERVER[‘HTTP_HOST’];
    $uri = $_SERVER[‘REQUEST_URI’];

    $current_url = $protocol . “://” . $hostname . $uri;

    echo $current_url;
    “`

    以上代码会将当前页面的完整 URL 打印出来。

    需要注意的是,`$_SERVER` 变量会根据服务器的配置和环境有所不同,因此在使用时需要做好兼容性处理,并根据具体的需求选择合适的变量来获取当前页面的URL。

    2年前 0条评论
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部