标题位置没有根据条件定位/重定向

问题描述:

这里我写了如果...条件与不同的标题位置。标题位置没有根据条件定位/重定向

$a = "yahoo"; 
if($a == "yahoo") 
{ 
header('location:http://www.yahoo.com'); 
}else{ 
header('location:http://www.gmail.com'); 
} 

header('location:http://www.google.com'); 

问题:

在上面的代码,如果条件为真,那么也就会重定向到google.com

按我的看法,我认为它首先进入if条件,然后重定向到给定位置和其他下面的代码将不会执行。

当我会写exit()die()每头它将工作。

问题

任何人都可以建议我在哪里,它的创建问题?

为什么没有exit()die()它不工作?

“位置:”标题。除非已经设置了201或3xx状态码,否则它不仅会将此标题发送回浏览器,还会向浏览器返回REDIRECT(302)状态码。

<?php 
header("Location: http://www.example.com/"); /* Redirect browser */ 

/* Make sure that code below does not get executed when we redirect. */ 
exit; 
?> 

您可以在PHP手册php header

阅读更多关于这个问题,你可以在文档此评论发现:http://php.net/manual/en/function.header.php#85254

头是由themselfs自动覆盖。因此,如果您不停止执行您的代码,那么您的标题会更改为'google',然后发送给用户。