php获取上一个页面路径怎么写

worktile 其他 132

回复

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

    在PHP中,可以使用$_SERVER[‘HTTP_REFERER’]变量来获取上一个页面的路径。$_SERVER是PHP的一个全局变量,用于存储Web服务器的一些环境变量信息,例如请求头信息、请求方法、请求路径等。

    具体代码如下:

    “`php
    $previousPage = $_SERVER[‘HTTP_REFERER’];
    echo $previousPage;
    “`

    上述代码中,$previousPage变量存储了上一个页面的路径。你可以根据自己的需要对该路径进行处理,例如打印输出、进行跳转等操作。

    需要注意的是,$_SERVER[‘HTTP_REFERER’]变量并不是一定可以获取到上一个页面的路径,它取决于客户端浏览器是否发送了REFERER请求头,并且服务器是否将其包含在请求中。有些浏览器或者用户可能会禁用REFERER请求头,因此这种方法并不是完全可靠。为了确保数据的有效性,建议在使用时进行合理的检查和验证。

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

    要获取上一个页面的路径,可以使用`$_SERVER`超全局变量中的`HTTP_REFERER`键。

    下面是一个获取上一个页面路径的示例代码:

    “`php
    $previousPage = $_SERVER[‘HTTP_REFERER’];

    echo $previousPage;
    “`

    上述代码中,`$_SERVER[‘HTTP_REFERER’]`存储了上一个页面的URL。只需将其赋值给一个变量(此处为`$previousPage`),就可以在代码中使用了。

    需要注意的是,`$_SERVER[‘HTTP_REFERER’]`并不总是可靠的,因为有些浏览器或网络防火墙会禁用它,或者用户可能通过直接输入URL访问网页,而不是通过点击链接。因此,在使用`$_SERVER[‘HTTP_REFERER’]`时,应该做好错误处理,以防止代码出错。

    另外,`$_SERVER[‘HTTP_REFERER’]`的值是一个字符串,包含了上一个页面的完整URL,包括协议、域名、路径等信息。如果只想获取上一个页面的路径(不包括域名和协议),可以使用`parse_url()`函数来解析URL。

    以下是使用`parse_url()`解析URL并获取上一个页面的路径的示例代码:

    “`php
    $previousPage = $_SERVER[‘HTTP_REFERER’];

    $path = parse_url($previousPage, PHP_URL_PATH);

    echo $path;
    “`

    上述代码中,`parse_url()`函数会将URL解析为一个关联数组,其中包含了URL的各个组成部分(协议、域名、路径等)。通过`PHP_URL_PATH`参数,可以获取到路径部分(即上一个页面的路径)。

    需要注意的是,如果上一个页面的URL中包含查询字符串或片段标识符(即`?`或`#`后面的部分),那么使用`PHP_URL_PATH`参数只能获取到`?`或`#`之前的部分,而不包括它们以及后面的内容。如果需要获取完整的路径,包括查询字符串和片段标识符,可以使用`PHP_URL_PATH | PHP_URL_QUERY | PHP_URL_FRAGMENT`参数。

    总结起来,要获取上一个页面的路径,可以使用`$_SERVER[‘HTTP_REFERER’]`超全局变量。但需要注意,`$_SERVER[‘HTTP_REFERER’]`的值不一定可靠,需要做好错误处理。如果只需要获取路径(不包括域名和协议),可以使用`parse_url()`函数解析URL,并使用`PHP_URL_PATH`参数获取路径部分。

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

    在PHP中,可以使用`$_SERVER`超全局变量来获取上一个页面的路径。

    如果想获取前一个页面的URL,可以使用`HTTP_REFERER`键名来获取,具体代码如下:

    “`php
    $previousPage = $_SERVER[‘HTTP_REFERER’];
    “`

    如果要获取前一个页面的完整路径(包括域名和查询参数),可以使用`REQUEST_URI`键名来获取,具体代码如下:

    “`php
    $previousPage = $_SERVER[‘REQUEST_URI’];
    “`

    这样就可以获取到前一个页面的路径了。

    另外,需要注意的是`$_SERVER[‘HTTP_REFERER’]`和`$_SERVER[‘REQUEST_URI’]`都是通过HTTP请求中的头部信息传递的,所以并不能保证这些信息一定是可靠的。有些浏览器可能会禁用`HTTP_REFERER`头部信息,或者用户手动修改该信息,因此获取到的前一个页面的路径可能并不准确。

    为了增加代码的健壮性,可以在获取前一个页面的路径前,先对其进行检查,如下所示:

    “`php
    if(isset($_SERVER[‘HTTP_REFERER’])){
    $previousPage = $_SERVER[‘HTTP_REFERER’];
    } else {
    $previousPage = ”;
    }
    “`

    这样,当无法获取`HTTP_REFERER`时,`$previousPage`将会被赋值为空字符串。

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

400-800-1024

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

分享本页
返回顶部