我正在创建一个脚本来验证表单,我在问自己一个问题。当我使用头部(见下面的例子)时,我需要在后面立即使用exit吗?我的意思是,使用header是否也意味着它在默认情况下是退出的,因此我不需要使用命令exit?
// cancel button clicked
if (isset($_POST['cancel'])) {
header("Location: http://localhost/admin/tracks.php");
exit;
}
echo '<p>$name</p>'发布于 2018-05-17 17:19:08
它不会停止你的脚本运行,你的脚本将继续运行,有时一个人(可能是出于恶意)所需要的就是你的脚本到达他可以做X的某个点。Header()只是重定向,exit();但是会立即停止脚本(where exit();is)。或者像其他人在用户名下声明的那样:
科迪。是的,在调用header('Location:http://google.com')之后,如果你不显式地终止它,脚本会继续处理!我刚在本地试过了。我使用这些内容将test.php添加到apache中的一个站点。
<?php
header('Location: http://google.com');
error_log("WE MADE IT HERE SOMEHOW");
?>并检查了我的/var/log/apache2/error_log中的以下条目:
[Tue Feb 12 23:39:23 2013] [error] [client 127.0.0.1] WE MADE IT HERE SOMEHOW所以最后的结论是: Header不会阻止脚本运行。
https://stackoverflow.com/questions/5527835
复制相似问题