PHP的header方法可以做很多事情,诸如跳转、延迟跳转、声明页面的content-type、返回response状态、下载操作等:
1. 下载
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')); //设置内容长度
2. 控制浏览器缓存
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");
3. 跳转
header('Location:'.$url); //Location和":"之间无空格。
4. 声明content-type
header('content-type:text/html;charset=utf-8');
5. 返回response状态码
header('HTTP/1.1 404 Not Found');
6. 延迟跳转
header('Refresh: 10; url=http://www.baidu.com/'); //10s后跳转。
7. http验证
header('HTTP/1.1 401 Unauthorized'); header('WWW-Authenticate: Basic realm="Top Secret"');