Post-Redirect-Get模式,exit()函数用途

时间:2013-10-02 00:52:11

标签: php redirect exit

我正在尝试了解Post-Redirect-Get模式,在几个例子中,人们在重定向后放置exit(),如下所示:

if ($_POST) {
   // Execute code (such as database updates) here.

   // Redirect to this page.
   header("Location: " . $_SERVER['REQUEST_URI']);
   exit();
}

我的问题是exit()功能。什么是它的porpuse?对我来说,它永远不会被重写,因为在“php解释器”到达那里之前页面是重定向的。

1 个答案:

答案 0 :(得分:1)

正如你所说,没有被召唤。

但是在你问一个问题之前,你可以做一个小测试来检查它是否被调用。

if ($_POST) {
   // Execute code (such as database updates) here.

   // Redirect to this page.
   header("Location: " . $_SERVER['REQUEST_URI']);
   $fp = fopen("log.txt", "a");
   fwrite($fp, "called");
   fclose($fp);
   exit();
}

因此,如果你看到一个名为log.txt的文件,那是因为调用了exit函数,如果没有文件就意味着没有调用exit。