首页  >  文章  >  后端开发  >  php header函数怎么用

php header函数怎么用

青灯夜游
青灯夜游原创
2019-02-27 11:56:3111731浏览

header()函数是PHP中的内置函数,可以用于发送原始HTTP标头。下面本篇文章就来带大家了解一下header()函数,介绍几种header()函数的用法,希望对大家有所帮助。【视频教程推荐:PHP教程

php header函数怎么用

header()函数

PHP header()函数的作用:以原始形式将HTTP标头发送到客户端或浏览器。在将HTML,XML,JSON或其他输出发送到浏览器或客户端之前,原始数据与服务器发出的请求(尤其是HTTP请求)一起作为标头信息发送出去。HTTP标头提供了关于消息体(更准确地说是关于请求和响应)中发送的对象的所需信息。

基本句式:

header( $header, $replace = TRUE, $http_response_code )

参数:header()函数接受三个参数

$header:用于保存标题字符串。有两种类型的标头调用,第一种是以字符串“HTTP /”开头,用于确定要发送的HTTP状态代码;第二种是“Location:”开头,这是强制性参数。

$replace:用于表示标题应该替换前一个或添加第二个标题,可省略。默认值为True(将替换),如果$replace值为False,则强制使用相同类型的多个标头。

$http_response_code:用于强制HTTP响应代码为指定值(PHP 4.3及更高版本),可省略。

header()函数的用法

1、重定向到URL,进行跳转页面

<?php 
header("Location: http://www.php.cn"); 
exit; 
?>

还可以调整跳转时间,设置在某个时间后执行跳转

<?php 
header("Refresh: 5; url= http://www.php.cn"); 
exit; 
?>

2、设置缓存控件,控制浏览器的缓存

<?php 
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");//禁止本页被缓存
?> 
  
<html> 
    <body> 
        <p>Hello World!</p> 
        <?php 
            var_dump(headers_list()); 
        ?> 
    </body> 
</html>

输出:

2.jpg

示例说明:

上面的示例,表示禁用缓存,可以帮助浏览器防止缓存,让浏览器每次请求本页时都要到服务器上取最新版本的内容。

注:header()函数在示例中多次使用,因为只允许一次发送一个标头(自PHP 4.4起),以防止标头注入攻击。

3、设置网络文件的类型、字符编码、语言、内容长度

//设置简体中文
header("Content-Language: charset=zh-cn");

// 设置内容长度
header(&#39;Content-Length: 39344&#39;);

//设置页面文件是HTML类型,字符集是GB2312,即简体中文
header("Content-type: text/html; charset=GB2312");

//设置页面文件是HTML类型,字符集是utf-8
header("content-type:text/html;charset=utf-8");

4、发送HTTP状态

以下是一些常见的HTTP状态:

<?php
//200 正常状态
header(&#39;HTTP/1.1 200 OK&#39;);

// 301 永久重定向,记得在后面要加重定向地址 Location:$url
header(&#39;HTTP/1.1 301 Moved Permanently&#39;);

// 设置页面304 没有修改
header(&#39;HTTP/1.1 304 Not Modified&#39;);

//401 未经授权:访问由于凭据无效被拒绝,需要进行登录
header(&#39;HTTP/1.1 401 Unauthorized&#39;);

// 403 禁止访问
header(&#39;HTTP/1.1 403 Forbidden&#39;);
 
// 404 错误
header(&#39;HTTP/1.1 404 Not Found&#39;);
// 500 错误
header(&#39;HTTP/1.1 500 Internal Server Error&#39;);
?>

5、执行http验证,显示信息

<?php
header(&#39;HTTP/1.1 401 Unauthorized&#39;);
header(&#39;WWW-Authenticate: Basic realm="登录信息"&#39;);
echo &#39;显示的信息!&#39;;
?>

6、设置头文件类型,可以用于流文件或者文件下载 

header(&#39;Content-Type: application/octet-stream&#39;); //设置内容类型
header(&#39;Content-Disposition: attachment; filename="example.zip"&#39;); //设置MIME用户作为附件
header(&#39;Content-Transfer-Encoding: binary&#39;); //设置传输方式
header(&#39;Content-Length: &#39;.filesize(&#39;example.zip&#39;)); //设置内容长度

以上就是本篇文章的全部内容,希望能对大家的学习有所帮助。更多精彩内容大家可以关注php中文网相关教程栏目!!!

以上是php header函数怎么用的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn