• 技术文章 >后端开发 >php教程

    php header函数怎么用

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

    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: //m.sbmmt.com"); 
    exit; 
    ?>

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

    <?php 
    header("Refresh: 5; url= //m.sbmmt.com"); 
    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('Content-Length: 39344');
    
    //设置页面文件是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('HTTP/1.1 200 OK');
    
    // 301 永久重定向,记得在后面要加重定向地址 Location:$url
    header('HTTP/1.1 301 Moved Permanently');
    
    // 设置页面304 没有修改
    header('HTTP/1.1 304 Not Modified');
    
    //401 未经授权:访问由于凭据无效被拒绝,需要进行登录
    header('HTTP/1.1 401 Unauthorized');
    
    // 403 禁止访问
    header('HTTP/1.1 403 Forbidden');
     
    // 404 错误
    header('HTTP/1.1 404 Not Found');
    // 500 错误
    header('HTTP/1.1 500 Internal Server Error');
    ?>

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

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

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

    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')); //设置内容长度

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

    以上就是php header函数怎么用的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:header()函数 php
    上一篇:如何在PHP中旋转并保存图像? 下一篇:学php和web前端哪个好?
    VIP课程(WEB全栈开发)

    相关文章推荐

    • 【腾讯云】年中优惠,「专享618元」优惠券!• php 用header()读写csv文件方法_PHP教程• header() 301重定向实现代码_PHP教程• php中header()函数的使用方法• HTTP状态码有哪些
    1/1

    PHP中文网