我的新项目有一个简单的包含。
我所包含的文件会检查一些函数并输出结果。
如果有任何错误,我希望进行简单的重定向。
我遇到的问题是主文件的其余部分(包含on)在重定向完成之前会持续加载几秒钟。
检查时是否有可能睡眠主文件?
谢谢!
编辑@dan:
包含文件的一部分:
function redirect($url) {
if(!headers_sent()) {
header('Location: '.$url);
exit;
} else {
echo '<script type="text/javascript">';
echo 'window.location.href="'.$url.'";';
echo '</script>';
echo '<noscript>';
echo '<meta http-equiv="refresh" content="0;url='.$url.'" />';
echo '</noscript>';
exit;
}
}
$url = "http://www.whatever.com/";
redirect($url);
exit;
答案 0 :(得分:1)
当您到达要重定向的点时,使用die
或exit
停止执行。
header("Location: http://www.example.com");
exit;
答案 1 :(得分:0)
您是否包含PHP和HTML?
如果您将所有HTML放入PHP字符串中,并且在处理完成之前不输出它们,那应该可以。
答案 2 :(得分:0)
您看到的几秒钟等待实际上是浏览器发送重定向请求并等待响应。除非您和客户端之间的链接具有零延迟,并且您的服务器可以立即响应,否则将始终暂停重定向。