PHP header头部定义详解

header()是什么,有什么作用

php中的header函数主要用于向客户端发送原始的http报头,常用的有用来通知浏览器页面不存在,延迟转向、表示内容类型、声明下载文件、对当前文档禁用缓存、显示一个需要验证的登陆对话框等等。

常见的声明设置:

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/java'); //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("Accept-Ranges:bytes");
 
header("Accept-Length:".$file_Size);
 
header('Content-Disposition: attachment; filename="ITblog.zip"');
 
// header("Content-Disposition: attachment; filename=".$filename);
 
header('Content-Transfer-Encoding: binary');
 
readfile('test.zip');

content-type:文件类型
Accept-Ranges:表示接收数据的类型或者范围,图片属于二进制的东西所以需要使用字节的方式传输
Accept-Length:表示接收的文件大小,php文件下载需要告诉浏览器下载的文件有多大
Content-Disposition:附件只需要把文件名给过去就可以,这个名称就是下载时显示的文件名称
Content-Transfer-Encoding:设置传输方式

对当前文档禁用缓存

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
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值