php $_SERVER['HTTP_REFERER']获取上一个页面的URL地址

时间:2016-07-01
php获取上一个页面的地址可以使用$_SERVER["HTTP_REFERER"]变量,$_SERVER是php中的环境变量,本文章向大家介绍$_SERVER["HTTP_REFERER"]的使用方法和实例,需要的朋友可以参考一下。

php $_SERVER["HTTP_REFERER"]变量可以获取上一个或前一个页面的URL地址。

比如有一个a.php页面,这个页面上有一个链接指向b.php页面,如果我们在a.php页面上点击这个链接,此时页面会到达b.php页面,在b.php页面输出$_SERVER["HTTP_REFERER"]变量,结果会显示a.php页面的地址。

如果页面是直接在浏览器打开的,则$_SERVER["HTTP_REFERER"]不会被设置,这个时候调用$_SERVER["HTTP_REFERER"]变量会出现以下错误信息

Notice: Undefined index: HTTP_REFERER in /path/to/filename.php on line 3

为了防止输出这个错误信息,我们可以使用下面严格一点的代码:

if(isset($_SERVER['HTTP_REFERER'])) {
    echo $_SERVER['HTTP_REFERER'];
}

或者这个代码也行:

echo isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : '';

php $_SERVER["HTTP_REFERER"]一般用在判断页面的来路,比如下面一个实例:

<?php
            if (isset($_SERVER['HTTP_REFERER'])) {
                    print "前一个页面的地址是: {$_SERVER['HTTP_REFERER']}<br />";
            } else {
                    print "你没有点击任何链接到达这个页面";
            }
    ?>

    <a href="refer.php">点击我!</a>

由上面实例可以看出,$_SERVER["HTTP_REFERER"]可以用于网站数据统计。大家可以自己试一试。