处理标头重定向后的脚本终止
在 PHP 中, header() 函数用于将 HTTP 标头发送到客户端。当用于重定向时,会出现一个常见问题:应该调用 exit() 还是调用 header() 后返回?
考虑以下场景:
<?php $urlFailToGoTo = '/formerror.php'; if (sth) { header(sprintf("Location: %s", $urlFailToGoTo)); exit(); // Should I call exit() here? } ?>
发送重定向标头后,除非明确终止,否则脚本执行将继续。为了确保立即重定向,建议在 header() 之后调用 exit()。这可以防止执行任何可能干扰重定向的 последующий 代码。
为什么 exit() 是首选
虽然 exit() 和 return 都可以终止脚本执行时,exit()有几个优点:
因此,最佳实践是调用调用 header() 后立即 exit() 以确保干净且立即的重定向。
以上是PHP `header()` 重定向后应该使用 `exit()` 还是 `return`?的详细内容。更多信息请关注PHP中文网其他相关文章!