我正在创建一个脚本来验证表单,我在问自己一个问题。当我使用 header 时(请参见下面的示例),我是否需要在之后立即使用退出?我的意思是,使用 header 是否也意味着它默认退出,因此我不需要使用命令 exit?
// cancel button clicked
if (isset($_POST['cancel'])) {
header("Location: http://localhost/admin/tracks.php");
exit;
}
echo '<p>$name</p>'
最佳答案
你应该调用 exit()
因为 header()
不会自动停止脚本的执行 - 或者如果它自动停止(老实说我不是 100%在那上面),它绝对不会立即停止脚本。
例如,试试这个代码:
<?php
header("Location: http://www.google.com");
unlink(__FILE__);
?>
这个小脚本使用 header()
将您重定向到 Google,然后自行删除。如果你运行它,你会注意到在你被重定向之后,文件仍然被删除了。这意味着即使 header()
调用重定向了您,unlink()
调用仍会执行。
关于php - 我需要在 header ("Location: http://localhost/..."之后使用 exit 吗)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5527835/