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"]一般用在判断页面的来路,比如下面一个实例:
if (isset($_SERVER['HTTP_REFERER'])) {
print "前一个页面的地址是: {$_SERVER['HTTP_REFERER']}
";
} else {
print "你没有点击任何链接到达这个页面";
}
?>
由上面实例可以看出,$_SERVER["HTTP_REFERER"]可以用于网站数据统计。