php中header函数后是否应该有exit

前端之家收集整理的这篇文章主要介绍了php中header函数后是否应该有exit前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

PHP header后是否需要书写exit以终止程序,以前一直没有太在意,今天遇到个bug,才发现这还是个问题,特意写了段代码测试了一下,代码如下:

通常有以下三种,代码如下:

  1. Location: xxxx:yyyy/zzzz 
  2. Content-Type: xxxx/yyyy 
  3. Status: nnn xxxxxx 

常用实例

1.实现重定向(状态码302),代码如下:

header(”Location: http://www.PHPfensi.com”);
exit;
?>

例子代码如下:

  1. header("Location:http://www.PHPfensi.com/"); 
  2. //exit(); 
  3. file_put_contents($_SERVER['DOCUMENT_ROOT'].DIRECTORY_SEPARATOR."n.txt",'PHP程序员教程网',LOCK_EX);  

如果证明PHP文件运行过程中如果碰到有header("Location:某个页面URL");这种语句,会直接跳转到另一个页面,但是这里的跳转并没有影响当前PHP文件的继续执行,也就是是说PHP header跳转之后,当前页面的脚本会继续执行,如果需要终止脚本运行,需要加exit()或者die().

但对于有些用法就不需要了.

404代码如下:

header('HTTP/1.1 404 Not Found'); 
header("status: 404 Not Found"); 
?>
 
301代码如下:
 
Header( "HTTP/1.1 301 Moved Permanently" ) ;
Header( "Location: www.PHPfensi.com" );
?>

猜你在找的PHP相关文章