-1

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

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

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

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

4

1 回答 1

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。

于 2013-10-02T00:54:39.140 回答