PHP 中 header()函数的作用

转载 2011年01月16日 21:37:00

from:http://hi.baidu.com/wuxicn/blog/item/5a18123d766a8106bba167f8.html

PHP 中 header()函数的作用是给客户端发送头信息。

什么是头信息?
这里只作简单解释,详细的自己看http协议。
在HTTP协议中,服务器端的回答(response)内容包括两部分:头信息(header) 和 体内容,这里的头信息不是HTML中的<head></head>部分,同样,体内容也不是<BODY>< /BODY>。头信息是用户看不见的,里面包含了很多项,包括:服务器信息、日期、内容的长度等。而体内容就是整个HTML,也就是你所能看见的全 部东西。

头信息有什么用呢?
头信息的作用很多,最主要的有下面几个:

1、跳转 :当浏览器接受到头信息中的 Location: xxxx 后,就会自动跳转到 xxxx 指向的URL地址,这点有点类似用 js 写跳转。但是这个跳转只有浏览器知道,不管体内容里有没有东西,用户都看不到。

2、指定网页的内容 :同样一个XML文件,如果头信息中指定:Content-type: application/xml 的话,浏览器会将其按照XML文件格式解析。但是,如果头信息中是:Content-type: text/xml 的话,浏览器就会将其看作存文本解析。(浏览器不是按照扩展名解析文件的)

3、附件 :不知道大家有没有注意,有些时候在一些网站下载东西,点下载连接以后,结果浏览器将这个附件当成网页打开 了,里面显示的都是乱码,这个问题也和头信息有关。有时候浏览器根据Content-type 来判断是打开还是保存,这样有时就会判断错误(主要是网站设计者忘记写Content-type)。其实,还有一个可以来指定该内容为附件、需要保存,这 个就是:Content-Disposition: attachment; filename="xxxxx"

在PHP中如何写?
1、跳转
header("Location: http://www.example.com/");

2、指定内容:
header('Content-type: application/pdf');

3、附件:
header('Content-type: application/pdf'); // 指定内容格式
header('Content-Disposition: attachment; filename="downloaded.pdf"'); // 指定内容为附件
readfile('original.pdf'); // 打开文件,并输出

最后要提醒大家注意一点,所 有头信息都必须在体内容之前,如果一旦有任何输出了的话,header函数写的头信息就没用了。比如,在文件最开头的<?php 处,如果前面有空格或者有空行,那header函数就没用了(其实可以通过设置:output_buffer来解决,anyway),为什么这样,可以看 看HTTP协议,很简单。

相关文章推荐

php函数header作用:

页面跳转 http头信息    头信息的作用很多,最主要的有下面几个: 1、跳转    当浏览器接受到头信息中的 Location: xxxx 后,就会自动跳转到 xxxx 指向的URL地址,...

header() 函数的用法和作用

什么是头信息? 这里只作简单解释,详细的自己看http协议。 在 HTTP协议中,服务器端的回答(response)内容包括两部分:头信息(header) 和 体内容,这里的头信息不是HTML中的部分...

php中header函数参数的Cache-control:private,no-cache,must-revalidate,max-age的使用方法

由于我做的是登录,也就是用户登录每次登陆时都要来访问服务器,不需要在客户机做缓存,于是在网上找了找,发下一下文章不错于是传了上来。 网页的缓存是由HTTP消息头中的“Cache-control”来控...

php中的 header () 函数详解

header()函数的作用是:发送一个原始 HTTP 标头[Http Header]到客户端。 标头 (header) 是服务器以 HTTP 协义传 HTML 资料到浏览器前所送出的字串,在标头  ...

PHP header()函数详解

header()函数的作用是:发送一个原始 HTTP 标头[Http Header]到客户端。 标头 (header) 是服务器以 HTTP 协义传 HTML 资料到浏览器前所送出的字串,在标头  ...

非常全面的PHP header函数设置HTTP头的示例

//定义编码 header( 'Content-Type:text/html;charset=utf-8 '); //Atom header('Content-type: application/...

Header函数和PHP_AUTH_USER做用户验证

Header函数和PHP_AUTH_USER做用户验证 2009-12-16 01:32 php Header PHP_AUTH_USER PHP_AUTH_PW 用户验证 在php...
  • samxx8
  • samxx8
  • 2011年09月05日 08:39
  • 836

PHP header函数

PHP 页面编码声明与用header或meta实现PHP页面编码的区别。 php的header来定义一个php页面为utf编码或GBK编码 php页面为utf编码 header(“Con...

php的header函数之设置content-type

设置常用的content-type: //定义编码 header( 'Content-Type:text/html;charset=utf-8 '); //Atom header('Content...

php中header函数参数的Cache-control:private,no-cache,must-revalidate,max-age是使用方法!

本文转载自 http://www.cnblogs.com/xuxiang/p/3407539.html       由于我做的是登录,也就是用户登录每次登陆时都要来访问服务器,不需要...
  • ccfxue
  • ccfxue
  • 2017年04月30日 20:05
  • 272
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:PHP 中 header()函数的作用
举报原因:
原因补充:

(最多只允许输入30个字)