php的header作用,php header的作用

df24ee5707317af77b383a8148a7a2e8.png

这篇文章主要给大家介绍PHP header函数的几大作用,希望能够对大家有所帮助。

推荐教程:PHP视频教程

先看看官方文档的定义

(PHP 4, PHP 5, PHP 7)

header — 发送原生 HTTP 头void header ( string $string [, bool $replace = true [, int $http_response_code ]] )

参数:

string

有两种特别的头。第一种以"HTTP/"开头的 (case is not significant),将会被用来计算出将要发送的HTTP状态码。 例如在 Apache 服务器上用 PHP 脚本来处理不存在文件的请求(使用 ErrorDocument 指令), 就会希望脚本响应了正确的状态码。<?php

header("HTTP/1.0 404 Not Found");

?>

第二种特殊情况是"Location:"的头信息。它不仅把报文发送给浏览器,而且还将返回给浏览器一个 REDIRECT(302)的状态码,除非状态码已经事先被设置为了201或者3xx。<?php

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

/* Make sure that code below does not get executed when we redirect. */

exit;

?>

replace

可选参数 replace 表明是否用后面的头替换前面相同类型的头。 默认情况下会替换。如果传入 FALSE,就可以强制使相同的头信息并存。例如:<?php

header('WWW-Authenticate: Negotiate');

header('WWW-Authenticate: NTLM', false);

?>

http_response_code

强制指定HTTP响应的值。注意,这个参数只有在报文字符串(string)不为空的情况下才有效。

header函数的常见用处有以下几点:

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');

以上代码可以在浏览器产生文件对话框的效果

4、让用户获取最新的资料和数据而不是缓存

header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1

header("Expires: Sat, 26 Jul 1997 05:00:00 GMT"); // 设置临界时间<?php

header('HTTP/1.1 200 OK'); // ok 正常访问

header('HTTP/1.1 404 Not Found'); //通知浏览器 页面不存在

header('HTTP/1.1 301 Moved Permanently'); //设置地址被永久的重定向 301

header('Location: http://www.ithhc.cn/'); //跳转到一个新的地址

header('Refresh: 10; url=http://www.ithhc.cn/'); //延迟转向 也就是隔几秒跳转

header('X-Powered-By: PHP/6.0.0'); //修改 X-Powered-By信息

header('Content-language: en'); //文档语言

header('Content-Length: 1234'); //设置内容长度

header('Last-Modified: '.gmdate('D, d M Y H:i:s', $time).' GMT'); //告诉浏览器最后一次修改时间

header('HTTP/1.1 304 Not Modified'); //告诉浏览器文档内容没有发生改变

###内容类型###

header('Content-Type: text/html; charset=utf-8'); //网页编码

header('Content-Type: text/plain'); //纯文本格式

header('Content-Type: image/jpeg'); //JPG、JPEG

header('Content-Type: application/zip'); // ZIP文件

header('Content-Type: application/pdf'); // PDF文件

header('Content-Type: audio/mpeg'); // 音频文件

header('Content-type: text/css'); //css文件

header('Content-type: text/javascript'); //js文件

header('Content-type: application/json'); //json

header('Content-type: application/pdf'); //pdf

header('Content-type: text/xml'); //xml

header('Content-Type: application/x-shockw**e-flash'); //Flash动画

######

###声明一个下载的文件###

header('Content-Type: application/octet-stream');

header('Content-Disposition: attachment; filename="ITblog.zip"');

header('Content-Transfer-Encoding: binary');

readfile('test.zip');

######

###对当前文档禁用缓存###

header('Cache-Control: no-cache, no-store, max-age=0, must-revalidate');

header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');

######

###显示一个需要验证的登陆对话框###

header('HTTP/1.1 401 Unauthorized');

header('WWW-Authenticate: Basic realm="Top Secret"');

######

###声明一个需要下载的xls文件###

header('Content-Disposition: attachment; filename=ithhc.xlsx');

header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');

header('Content-Length: '.filesize('./test.xls'));

header('Content-Transfer-Encoding: binary');

header('Cache-Control: must-revalidate');

header('Pragma: public');

readfile('./test.xls');

######

?>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值