📜  如何在php中获取上一页的url(1)

📅  最后修改于: 2023-12-03 14:52:48.007000             🧑  作者: Mango

如何在 PHP 中获取上一页的 URL

在开发 Web 应用程序时,有时需要获取上一页的 URL,以方便用户返回到之前的页面。在 PHP 中,获取上一页的 URL 有多种方法,本文将为您介绍其中两种常用的方法。

方法一:使用 $_SERVER['HTTP_REFERER']

$_SERVER['HTTP_REFERER'] 是一个保存着用户上一页 URL 的全局变量。它的值是一个字符串,其中包含了用户的上一页 URL。

以下是使用 $_SERVER['HTTP_REFERER'] 获取上一页 URL 的示例代码:

if (isset($_SERVER['HTTP_REFERER'])) {
  $previousPage = $_SERVER['HTTP_REFERER'];
  echo "上一页 URL:$previousPage";
} else {
  echo "未知的上一页 URL";
}

代码说明:

  • 第 1 行:使用 isset() 判断 $_SERVER['HTTP_REFERER'] 是否存在。
  • 第 2 行:如果存在,将 $_SERVER['HTTP_REFERER'] 的值保存到 $previousPage 变量中。
  • 第 3 行:输出上一页 URL。
  • 第 5-6 行:如果 $_SERVER['HTTP_REFERER'] 不存在,输出错误信息。
方法二:使用 Session

除了 $_SERVER['HTTP_REFERER'] 外,我们还可以通过 Session 在页面之间传递数据,从而实现获取上一页 URL 的功能。

以下是使用 Session 获取上一页 URL 的示例代码:

在上一页页面中,将当前页面 URL 保存到 Session 中:

session_start();
$_SESSION['previousPage'] = $_SERVER['REQUEST_URI'];

在下一页页面中,从 Session 中获取上一页 URL:

session_start();
if (isset($_SESSION['previousPage'])) {
  $previousPage = $_SESSION['previousPage'];
  echo "上一页 URL:$previousPage";
} else {
  echo "未知的上一页 URL";
}

代码说明:

  • 第 1 行:使用 session_start() 开启 Session。
  • 第 2 行:将当前页面 URL($_SERVER['REQUEST_URI'])保存到 Session 的 $_SESSION['previousPage'] 变量中。
  • 第 6 行:从 Session 中获取上一页 URL。
  • 第 7 行:输出上一页 URL。
  • 第 9-10 行:如果 Session 中不存在 $_SESSION['previousPage'],输出错误信息。
总结

本文介绍了两种实现在 PHP 中获取上一页 URL 的方法:使用 $_SERVER['HTTP_REFERER'] 和使用 Session。无论使用哪种方法,都应该注意上一页 URL 可能为空或未定义的情况,避免程序出错。