PHP header()函数

2017-09-13 10:28:46来源:网络收集作者:管理员人点击

分享

header()函数是在PHP中经常使用的一个函数,但是它具体的作用有用法是什么样的呢?


语法


header(string,replace,http_response_code)
参数
含义
string
必需。规定要发送的报头字符串。
replace
可选。指示该报头是否替换之前的报头,或添加第二个报头。默认是 true(替换)。false(允许相同类型的多个报头)。
http_response_code
可选。把 HTTP 响应代码强制为指定的值。(PHP 4 以及更高版本可用)


1.首先, 在header之前不能有任何输出,因为header是向客气端发送原始的HTTP报头;
由于HTTP协议规定,回应头应该先于回应主体发送,如果有输出主体,则自动设置回应头发送至客气端,所以header就不能再去设置一个已发送的报头;
类似的函数还有 session_start()SetCookie() 等.
2.由于header函数是向客气端发送回应头的,所以下面的代码是一些回应头的状态.


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

ps:代码转载自 http://www.cnblogs.com/huyihao/p/6004800.html




最新文章

123

最新摄影

微信扫一扫

第七城市微信公众平台