header() 函数向客户端发送原始的 HTTP 报头。
认识到一点很重要,即必须在任何实际的输出被发送之前调用 header() 函数
(在 PHP 4 以及更高的版本中,您可以使用输出缓存来解决此问题):
PHP header 的几种用法,你知道几种?
1. 跳转页面
- header('Location:'.$url); //Location和":"之间无空格。
2. 声明content-type
- header('content-type:text/html;charset=utf-8');
3. 返回response状态码
- header('HTTP/1.1 404 Not Found');
4. 在某个时间后执行跳转
- header('Refresh: 10; url=http://www.baidu.com/'); //10s后跳转。
5. 控制浏览器缓存
- header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
- header("Last-Modified: " . gmdate("D, d M Y H:i:s") . "GMT");
- header("Cache-Control: no-cache, must-revalidate");
- header("Pragma: no-cache");
6. 执行http验证
- header('HTTP/1.1 401 Unauthorized');
- header('WWW-Authenticate: Basic realm="Top Secret"');
7. 执行下载操作
- header('Content-Type: application/octet-stream'); //设置内容类型
- header('Content-Disposition: attachment; filename="example.zip"'); //设置MIME用户作为附件
- header('Content-Transfer-Encoding: binary'); //设置传输方式
- header('Content-Length: '.filesize('example.zip')); //设置内容长度