PHP的header()

header()函数用于发送原生的HTTP头。header()前不能有输出!

1.关于头信息。

  在HTTP协议中,HTTP消息为:客户端发送的request请求消息和服务器端发送的respose响应消息。

  请求消息:HTTP头(请求行+请求头)+HTTP体(请求体);  响应消息:HTTP头(状态行+响应头)+HTTP体(响应体)

  这HTTP头的头信息,不是HTML中的<head></head>部分,当然HTTP体的体内容也不是HTML中的<body></body>部分。

  头信息包括很多东西:详细见:www.cnblogs.com/aliang1992/p/6049578.html。

2.常见的header()函数例子:

  第一种:以“HTTP/”开头的,将会被用来计算出将要发送的HTTP状态码。

  例如:在Apache服务器上用PHP脚本处理不存在文件的请求,就会希望脚本响应正确的状态码。

<?php
    header("HTTP/1.0 404 Not Found");
?>

  第二种:以“Location:”开头的,它不仅吧报文发送给浏览器,而且还将返回给浏览器一个状态码。

  通俗点讲,就是自动跳转到 http://www.example.com/的URL地址。

<?php
    header("Location: http://www.example.com/");
    exit;
?>

  第三种: 以“Content-type:”开头的,告诉浏览器,服务器响应的对象类型。

  例如:application/xml  text/xml 等。决定浏览器讲义什么形式,什么编码读取这个文件。

  第四种:以“Content-Disposition:”,指定内容附件。

  服务器端想客户端浏览器发送文件时,如果是浏览器支持的文件类型,一般会默认使用浏览器打开,比如txt.jpg等,会直接在浏览器中显示,如果需要提示用户

  保存,就要利用Content-Disposition进行处理。

<?php
    header("Content-Disposition","attachment;filename=xxx.txt");
?<

 

posted @ 2017-08-29 12:57  淡水宁海  阅读(155)  评论(0编辑  收藏  举报