php中header用法总结

PHP 中 header()函数的作用是给客户端发送头信息。

什么是头信息?

这里只作简单解释,详细的自己看http协议。

在 HTTP协议中,服务器端的回答(response)内容包括两部分:头信息(header) 和 体内容,这里的头信息不是HTML中的<head></head>部分,同样,体内容也不是<BODY>< /BODY>。头信息是用户看不见的,里面包含了很多项,包括:服务器信息、日期、内容的长度等。而体内容就是整个HTML,也就是你所能看见的全 部东西。

头信息有什么用呢?

头信息的作用很多,最主要的有下面几个:

1、跳转:

Header("Refresh:2; URL=http://localhost//session.php");//2秒后跳转

若等待时间为0,则与header("location:")等效,立即跳转。

Header("Location:http://localhost//session.php");//直接跳转

2、声明content-type,指定网页的内容:

同样一个XML文件,如果头信息中指定:Content-type: application/xml 的话,浏览器会将其按照XML文件格式解析。但是,如果头信息中是:Content-type: text/xml 的话,浏览器就会将其看作存文本解析。(浏览器不是按照扩展名解析文件的)

3、附件下载:

$filename = "tupian.jpg"; //文件路径 可以绝对路径也可以相对路径
header('Content-type: application/x-jpg'); //文件的类型
header('Content-Disposition: attachment; filename="保存时的文件名.jpg"'); //下载显示的名字
readfile("$filename");
exit();

4.查看:

$link = "tupian.jpg"; //文件路径 可以绝对路径也可以相对路径
//$link = "新建文本文档.xml"; //文件路径 可以绝对路径也可以相对路径
if (isset($link))
{
  Header("HTTP/1.1 303 See Other");
  Header("Location: $link");
  exit;
}

5.中文乱码处理:

header('content-type:text/html;charset=utf-8');//中文乱码处理

6.控制浏览器缓存

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

7.执行http验证

header('HTTP/1.1 401 Unauthorized');
header('WWW-Authenticate: Basic realm="Top Secret"');

8返回response状态码

header('HTTP/1.1 404 Not Found');

猜你喜欢

转载自blog.csdn.net/weixin_38676357/article/details/81710827