php怎么获取当前的url

worktile 其他 161

回复

共3条回复 我来回复
  • worktile的头像
    worktile
    Worktile官方账号
    评论

    在PHP中,可以通过使用预定义变量$_SERVER[‘REQUEST_URI’]来获取当前的URL。

    具体的代码如下:

    “`php
    $currentURL = ‘http’;
    if(isset($_SERVER[‘HTTPS’]) && $_SERVER[‘HTTPS’] === ‘on’){
    $currentURL .= ‘s’;
    }
    $currentURL .= ‘://’ . $_SERVER[‘HTTP_HOST’] . $_SERVER[‘REQUEST_URI’];

    echo $currentURL;
    “`

    上述代码首先检查是否使用了HTTPS协议,如果是则在URL中加上https://,否则加上http://。然后通过$_SERVER[‘HTTP_HOST’]获取当前主机名,并通过$_SERVER[‘REQUEST_URI’]获取当前请求的URI,将它们拼接起来,即可得到当前的URL。

    请注意,$_SERVER[‘REQUEST_URI’]变量返回的是当前页面相对于网站根目录的相对路径,不包括域名部分。如果需要完整的URL,需要将当前页面的协议和主机名拼接上去。

    另外,$_SERVER[‘REQUEST_URI’]也可以包含查询字符串(query string),例如:http://www.example.com/page.php?param1=value1&param2=value2。如果需要获取不包含查询字符串的纯净URL,还需要对$_SERVER[‘REQUEST_URI’]进行处理,去除其中的查询字符串部分。

    “`php
    $uri = explode(‘?’, $_SERVER[‘REQUEST_URI’], 2);
    $currentURL = ‘http’;
    if(isset($_SERVER[‘HTTPS’]) && $_SERVER[‘HTTPS’] === ‘on’){
    $currentURL .= ‘s’;
    }
    $currentURL .= ‘://’ . $_SERVER[‘HTTP_HOST’] . $uri[0];

    echo $currentURL;
    “`

    上述代码使用explode()函数将$_SERVER[‘REQUEST_URI’]按照’?’进行分割,得到的数组$uri的第一个元素是不包含查询字符串的URI。然后将其与协议和主机名拼接起来,即可得到不包含查询字符串的纯净URL。

    希望以上内容能够帮助到你,如果还有其他问题,请随时追问。

    2年前 0条评论
  • 不及物动词的头像
    不及物动词
    这个人很懒,什么都没有留下~
    评论

    获取当前URL的方法有多种,以下是其中一些常用的方法:

    1. 使用$_SERVER[‘REQUEST_URI’]
    可以使用$_SERVER[‘REQUEST_URI’]来获取当前页面的URL。该方法可以返回完整的URL路径,包括协议、域名、端口号、路径以及查询参数等信息。
    例如:$current_url = $_SERVER[‘REQUEST_URI’];

    2. 使用$_SERVER[‘PHP_SELF’]
    使用$_SERVER[‘PHP_SELF’]也可以获取当前页面的URL,不过相对于$_SERVER[‘REQUEST_URI’]而言,$_SERVER[‘PHP_SELF’]只返回路径,不包含域名、协议、端口号以及查询参数等信息。
    例如:$current_url = $_SERVER[‘PHP_SELF’];

    3. 使用$_SERVER[‘HTTP_HOST’]
    可以使用$_SERVER[‘HTTP_HOST’]获取当前页面的域名或主机名。该方法只会返回域名部分,不包括协议、端口号以及路径和查询参数等信息。
    例如:$current_url = $_SERVER[‘HTTP_HOST’];

    4. 使用$_SERVER[‘SERVER_NAME’]
    使用$_SERVER[‘SERVER_NAME’]也可以获取当前页面的域名或主机名,与$_SERVER[‘HTTP_HOST’]作用相似。不过需要注意的是,$_SERVER[‘SERVER_NAME’]在某些环境下可能会返回空值,而$_SERVER[‘HTTP_HOST’]则总是会返回有效值。
    例如:$current_url = $_SERVER[‘SERVER_NAME’];

    5. 使用$_SERVER[‘HTTPS’]
    可以使用$_SERVER[‘HTTPS’]来获取当前页面是否通过HTTPS协议访问。如果值为”on”,表示通过HTTPS访问;如果值为空,表示通过HTTP访问。
    例如:$is_https = $_SERVER[‘HTTPS’];

    综上所述,以上是一些常用的方法来获取当前页面的URL。根据具体的需求来选择合适的方法,可以根据需要获取完整的URL或部分URL信息。

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

    在PHP中,我们可以使用$_SERVER[‘REQUEST_URI’]来获取当前的URL。$_SERVER是PHP中的一个超全局数组,包含了关于服务器和请求的信息。

    操作流程如下:
    1. 打开PHP文件,开始编写代码。
    2. 使用$_SERVER[‘REQUEST_URI’]来获取当前URL。
    3. 使用echo语句将获取到的URL输出。

    下面是完整的代码示例:
    “`php

    “`

    上述代码中,首先使用$_SERVER[‘REQUEST_URI’]来获取当前的URL,然后使用echo语句将获取到的URL输出出来。

    在以上示例中,我们可以根据需要在代码中做进一步的处理,例如:解析URL中的参数,根据不同的URL执行不同的操作等。

    总结:
    在PHP中,使用$_SERVER[‘REQUEST_URI’]可以方便地获取当前的URL。我们可以根据需要对获取到的URL进行进一步的处理和操作。

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

400-800-1024

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

分享本页
返回顶部